Maison  >  Questions et réponses  >  le corps du texte

Ajouter des propriétés aux objets JavaScript en utilisant des variables comme clés ?

<p>J'utilise jQuery pour extraire un élément du DOM et je souhaite définir les propriétés de l'objet à l'aide du <code>id</code> de l'élément DOM. </p> <h3>Exemple</h3> <pre class="brush:js;toolbar:false;">const obj = {} jQuery(itemsFromDom).each(function() { élément const = jQuery (this) const nom = élément.attr('id') valeur const = élément.attr('valeur') //Voici le problème obj.nom = valeur }) ≪/pré> <p>Si <code>itemsFromDom</code> contient un élément avec <code>id</code> étant "myId", je veux que <code>obj</code> " "propriétés. Le code ci-dessus me donne <code>name</code>. </p> <p>Comment nommer les propriétés d'un objet à l'aide de variables en utilisant JavaScript ? </p>
P粉071559609P粉071559609422 Il y a quelques jours486

répondre à tous(2)je répondrai

  • P粉116654495

    P粉1166544952023-08-25 16:58:11

    Avec ECMAScript 2015, vous pouvez utiliser la notation entre crochets directement dans la déclaration d'objet :

    var obj = {
      [key]: value
    }

    key peut être n'importe quel type d'expression (comme une variable), renvoyant une valeur :

    var obj = {
      ['hello']: 'World',
      [x + 2]: 42,
      [someObject.getId()]: someVar
    }

    répondre
    0
  • P粉696605833

    P粉6966058332023-08-25 10:28:30

    Vous pouvez utiliser la syntaxe équivalente :

    obj[name] = value

    Exemple :

    let obj = {};
    obj["the_key"] = "the_value";

    Ou utilisez les fonctionnalités ES6 :

    let key = "the_key";
    let obj = {
      [key]: "the_value",
    };

    Dans les deux exemples, console.log(obj)将返回:{ the_key: 'the_value' }

    répondre
    0
  • Annulerrépondre