我需要动态设置JS对象属性名称。for(i=1; i<3; i++) { var key = i+'name'; data = { key : 'name1', }}结果应为:data = { 1name: 'name1' 2name: 'name1'}
3 回答

开满天机
TA贡献1786条经验 获得超13个赞
var jsonVariable = {};
for(var i=1; i < 3; i++) {
jsonVariable[i + 'name'] = 'name' + i;
}

呼如林
TA贡献1798条经验 获得超3个赞
您必须使用[]符号来动态设置键。
var jsonVariable = {};
for(i=1; i<3; i++) {
var jsonKey = i+'name';
jsonVariable[jsonKey] = 'name1';
}
现在在ES6中,您可以使用对象文字语法动态创建对象键,只需将变量包装在 []
var key = i + 'name';
data = {
[key] : 'name1',
}
添加回答
举报
0/150
提交
取消