Maison > interface Web > js tutoriel > Comment puis-je créer des objets JavaScript avec des clés dynamiques ?

Comment puis-je créer des objets JavaScript avec des clés dynamiques ?

Mary-Kate Olsen
Libérer: 2024-12-07 22:05:17
original
140 Les gens l'ont consulté

How Can I Create JavaScript Objects with Dynamic Keys?

Création d'objets avec des clés dynamiques

En JavaScript, les clés d'un littéral d'objet sont généralement des chaînes statiques. Cependant, il peut arriver que vous deviez attribuer dynamiquement des clés à des objets en fonction des données d'entrée.

Dans ce scénario, l'utilisateur dispose d'une fonction qui doit créer un objet avec des clés et des valeurs déterminées dynamiquement. Cependant, la simple utilisation de la fonction .map génère un tableau d'objets avec le même nom de clé.

Solution 1 : Clés calculées (ES2015)

Dans la version récemment introduite Norme ES2015, les objets peuvent être créés avec des clés calculées. En utilisant cette syntaxe, la clé d'un littéral d'objet peut être spécifiée dynamiquement en tant que variable ou expression.

stuff = function (thing, callback) {
  var inputs = $('div.quantity > input').map(function () {
    return {
      [this.attr('name')]: this.attr('value'),
    };
  });

  callback(null, inputs);
};
Copier après la connexion

Solution 2 : Notation entre crochets (ES5 et versions antérieures)

Dans les versions antérieures de JavaScript (ES5 et versions antérieures), les clés dynamiques peuvent être attribuées à l'aide de la notation entre parenthèses. Cela implique de définir la clé sous forme de chaîne entre crochets.

stuff = function (thing, callback) {
  var inputs = $('div.quantity > input').map(function () {
    var key = this.attr('name');
    var value = this.attr('value');
    var ret = {};

    ret[key] = value;
    return ret;
  });

  callback(null, inputs);
};
Copier après la connexion

En utilisant l'une ou l'autre de ces techniques, vous pouvez créer dynamiquement des clés d'objet basées sur les données d'entrée en JavaScript, en vous assurant que les clés correspondent aux valeurs souhaitées.

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