在 for 循环中设置动态键和值
Set dynamic key and values inside for loop
这似乎是一件基本的事情,但我无法找到我哪里出错了。
我想要以这种键值格式输出。
[{"10":"bob"},{"20":"Tom"},{"30":"Larry"}]
我在做什么-
var list = [];
var names = ["Bob","Tom","Larry"];
var ages = ["10", "20", "30"];
for(var i=0; i<names.length; i++){
list.push({ages[i] : names[i]})
}
但是我遇到了意外的令牌错误。请指导我哪里出错了?
要创建动态属性,您需要使用 bracket notation:
尝试以下操作:
var list = [];
var names = ["Bob","Tom","Larry"];
var ages = ["10", "20", "30"];
for(var i=0; i<names.length; i++){
list.push({[ages[i]] : names[i]})
}
console.log(list);
要将动态字符串设置为对象的 属性,可以使用方括号表示法 (obj[propVariable]
)。所以,只需将一个空对象存储到一个变量(var item = {}
)中,然后您就可以通过item[propVariable]
.
设置它的属性
var list = [];
var names = ["Bob","Tom","Larry"];
var ages = ["10", "20", "30"];
for(var i=0; i<names.length; i++){
var item = {};
item[ages[i]] = names[i];
list.push(item);
}
console.log(list);
您可以阅读有关方括号表示法的更多信息 here and here。
这似乎是一件基本的事情,但我无法找到我哪里出错了。
我想要以这种键值格式输出。
[{"10":"bob"},{"20":"Tom"},{"30":"Larry"}]
我在做什么-
var list = [];
var names = ["Bob","Tom","Larry"];
var ages = ["10", "20", "30"];
for(var i=0; i<names.length; i++){
list.push({ages[i] : names[i]})
}
但是我遇到了意外的令牌错误。请指导我哪里出错了?
要创建动态属性,您需要使用 bracket notation: 尝试以下操作:
var list = [];
var names = ["Bob","Tom","Larry"];
var ages = ["10", "20", "30"];
for(var i=0; i<names.length; i++){
list.push({[ages[i]] : names[i]})
}
console.log(list);
要将动态字符串设置为对象的 属性,可以使用方括号表示法 (obj[propVariable]
)。所以,只需将一个空对象存储到一个变量(var item = {}
)中,然后您就可以通过item[propVariable]
.
var list = [];
var names = ["Bob","Tom","Larry"];
var ages = ["10", "20", "30"];
for(var i=0; i<names.length; i++){
var item = {};
item[ages[i]] = names[i];
list.push(item);
}
console.log(list);
您可以阅读有关方括号表示法的更多信息 here and here。