JavaScript legt den Objektschlüssel über eine Variable fest
P粉106301763
P粉106301763 2023-10-09 12:00:10
0
2
567

Ich erstelle einige Objekte in JavaScript und schiebe diese Objekte in ein Array. Ich speichere den Schlüssel, den ich verwenden möchte, in einer Variablen und erstelle dann mein Objekt wie folgt:

var key = "happyCount";
myArray.push( { key : someValueArray } );

Aber wenn ich versuche, das Array von Objekten für jedes Objekt zu überprüfen, sind die Schlüssel "key" und nicht der Wert der Variablen key. Gibt es eine Möglichkeit, den Wert eines Schlüssels aus einer Variablen festzulegen?

Geige zur besseren Erklärung: http://jsfiddle.net/Fr6eY/3/

P粉106301763
P粉106301763

Antworte allen(2)
P粉321676640

在 ES6 中,你可以这样做。

var key = "name";
var person = {[key]:"John"}; // same as var person = {"name" : "John"}
console.log(person); // should print  Object { name="John"}

    var key = "name";
    var person = {[key]:"John"};
    console.log(person); // should print  Object { name="John"}

其名为计算属性名称,它使用括号表示法(方括号)[]

实现

示例:{ [variableName] : someValue }

对于 ES5,尝试这样的操作

var yourObject = {};

yourObject[yourKey] = "yourValue";

console.log(yourObject );

示例:

var person = {};
var key = "name";

person[key] /* this is same as person.name */ = "John";

console.log(person); // should print  Object { name="John"}

    var person = {};
    var key = "name";
    
    person[key] /* this is same as person.name */ = "John";
    
    console.log(person); // should print  Object { name="John"}
P粉579008412

您需要先创建对象,然后使用[]设置它。

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

obj[key] = someValueArray;
myArray.push(obj);

2021 年更新:

计算属性名称功能在 ECMAScript 2015 (ES6) 中引入,它允许您以 JavaScript 对象文字表示法动态计算对象属性的名称。

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

const obj = {
    [yourKeyVariable]: someValueArray,
}
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage