我正在尝试创建一个具有此结构的 JS 对象
{ node1:
[ 'test1.1',
'test1.2'],
node2:
['test2.1',
'test2.2']
}
这是我的代码
for (var k = 0; k < keys.length; i++){
key = keys[k];
var result = {};
var r = [];
for (var i = 0; i < elements.length; i++){
r.push(elements[i]);
}
result[key] = r;
}
结果看起来与我的预期有点不同,并且不是有效的 JSON:
{ node1:
[ 'test1.1',
'test1.2'] }
{ node2:
[ 'test2.1',
'test2.2' ] }
我不确定代码有什么问题。
最佳答案
在 for
循环外部声明 var result = {};
,它将在当前循环内创建一个新对象时工作。
var result = {};
for (var k = 0; k < keys.length; k++) {
key = keys[k];
var r = [];
for (var i = 0; i < elements.length; i++) {
r.push(elements[i]);
}
result[key] = r;
}
第一个循环中还有 i++
,因此将其更改为 k++
,否则将会出现无限循环。
关于javascript - 在 JSobject 中追加元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52040283/