Maison > interface Web > js tutoriel > Comment puis-je ajouter efficacement des membres d'objet conditionnels en JavaScript ?

Comment puis-je ajouter efficacement des membres d'objet conditionnels en JavaScript ?

DDD
Libérer: 2024-12-05 12:28:09
original
487 Les gens l'ont consulté

How Can I Efficiently Add Conditional Object Members in JavaScript?

Ajout conditionnel de membre d'objet en JavaScript

En JavaScript, la pratique courante pour l'ajout conditionnel d'un membre à un objet implique une instruction if-else :

var a = {};
if (someCondition)
    a.b = 5;
Copier après la connexion

Bien que cette méthode fonctionne, elle peut être considérée comme moins idiomatique. Pour obtenir une solution plus concise et flexible, nous pouvons explorer des approches alternatives.

Une tentative consiste à utiliser l'opérateur ternaire dans la déclaration d'objet :

a = {
    b: (someCondition? 5 : undefined)
};
Copier après la connexion

Cependant, cette approche aboutit à un objet où b est présent mais a une valeur indéfinie.

Pour un cas général avec plusieurs membres conditionnels, nous pouvons utiliser une approche plus élaborée utilisant l'opérateur de propagation et le court-circuit ET logique évaluation :

const a = {
   ...(someCondition && {b: 5})
}
Copier après la connexion

Dans cette syntaxe, l'opérateur de propagation décompresse l'objet entre parenthèses et l'ajoute à un if someCondition est vrai. L'opérateur logique ET (&&) garantit que l'objet n'est ajouté que si someCondition est vraie, et l'évaluation du court-circuit empêche l'évaluation de l'expression {b : 5} si someCondition est fausse.

Cette approche fournit un moyen propre et efficace d'ajouter conditionnellement des membres à un objet en JavaScript.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal