我有一个javascript数组和一个变量。我想将变量作为属性名称推送到数组中,但它必须保存变量的值,而不是变量作为字符串。 如果我有这个代码:
array = [];
var x = 10;
array.push({x: y});
x存储为字符串“x”,而不是包含var x值的变量。 任何帮助表示赞赏。
答案 0 :(得分:10)
对象文字中的属性名称不会被计算为变量。您必须使用括号表示法分配属性。
var obj = {};
obj[x] = y;
array.push(obj);