Maison > interface Web > js tutoriel > Comment puis-je définir dynamiquement des clés d'objet à l'aide de variables en JavaScript ?

Comment puis-je définir dynamiquement des clés d'objet à l'aide de variables en JavaScript ?

Barbara Streisand
Libérer: 2025-01-04 17:48:13
original
525 Les gens l'ont consulté

How Can I Dynamically Set Object Keys Using Variables in JavaScript?

Définition de clés d'objet à l'aide de variables en JavaScript

En JavaScript, lors de la construction d'objets, vous pouvez rencontrer une situation dans laquelle vous souhaitez définir dynamiquement la valeur de la clé à l'aide d'une variable. Cependant, en suivant simplement la syntaxe courante d'initialisation des objets, vous remarquerez que la clé est définie sur le nom de la variable plutôt que sur la valeur souhaitée.

Description du problème

L'extrait de code suivant illustre le problème :

var key = "happyCount";
myArray.push({ key: someValueArray });
Copier après la connexion

L'inspection de myArray après cette opération révèle que la clé de chaque objet est "clé" au lieu de la valeur prévue stockée dans la clé variable.

Solution : créer d'abord l'objet

Pour résoudre ce problème, créez l'objet avant de définir la clé en utilisant la notation entre crochets []. Cette syntaxe vous permet de définir dynamiquement la valeur de la clé à partir d'une variable.

var key = "happyCount";
var obj = {};

obj[key] = someValueArray;
myArray.push(obj);
Copier après la connexion

Maintenant, l'objet créé aura la clé définie sur la valeur de la variable clé.

ECMAScript 2015 calculé Noms de propriétés

ECMAScript 2015 (ES6) a introduit les noms de propriétés calculés, une fonctionnalité qui permet encore plus de flexibilité dans la définition des clés d'objet dynamiquement. Cette syntaxe utilise des crochets [] pour entourer le nom de la propriété, qui peut être n'importe quelle expression JavaScript valide.

const yourKeyVariable = "happyCount";
const someValueArray = [...];

const obj = {
    [yourKeyVariable]: someValueArray,
};
Copier après la connexion

Ce code obtient le même résultat que la solution précédente mais utilise la syntaxe des noms de propriété calculés, qui est plus concis et expressif.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal