Eigenschaften zu JavaScript-Objekten hinzufügen und dabei Variablen als Schlüssel verwenden?
P粉071559609
P粉071559609 2023-08-24 18:04:17
0
2
531
<p>Ich verwende jQuery, um ein Element aus dem DOM zu extrahieren, und möchte die Eigenschaften des Objekts mithilfe der <code>id</code> des DOM-Elements festlegen. </p> <h3>Beispiel</h3> <pre class="brush:js;toolbar:false;">const obj = {} jQuery(itemsFromDom).each(function() { const element = jQuery(this) const name = element.attr('id') const value = element.attr('value') //Hier ist das Problem obj.name = Wert }) </pre> <p>Wenn <code>itemsFromDom</code> ein Element mit der Bezeichnung „myId“ enthält, möchte ich, dass <code>obj</code> " "Eigenschaften. Der obige Code gibt mir <code>name</code>. </p> <p>Wie benenne ich Eigenschaften eines Objekts mithilfe von Variablen mithilfe von JavaScript? </p>
P粉071559609
P粉071559609

Antworte allen(2)
P粉116654495

使用ECMAScript 2015,您可以直接在对象声明中使用方括号表示法:

var obj = {
  [key]: value
}

其中key可以是任何类型的表达式(例如变量),返回一个值:

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

你可以使用等效的语法:

obj[name] = value

示例

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

或者使用ES6的特性:

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

在这两个示例中,console.log(obj)将返回:{ the_key: 'the_value' }

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage