gpt4 book ai didi

javascript - 对于 array-json 对象中的每个元素

转载 作者:行者123 更新时间:2023-11-28 07:06:02 25 4
gpt4 key购买 nike

1)我想要的是:

element1 = [roof, walls, floor]
element2 = [table, chair]

2)我的出发点是:

for(var i=0;i<roomElements;i++){ 
var room = [];
room.push({"element" + i + : getElement(room)});
}

“我”毁了聚会。如何将动态变量附加到我的 json 数组?

我需要空间来成为这样的对象:

   var room = {"element1":"roof,walls,floor","element2":"table,chair"};

然后我想以某种方式处理该对象,这样我就可以获得:

element1 = [roof, walls, floor]
element2 = [table, chair]

然后我想用类似的东西来呼应这些新变量。

  for each element in room

所以我可以输出:

  alert("element 1 has roof, walls,floor", "element2 has table, chair")    

最佳答案

你不能(在 ES6 之前)使用这样的动态字段名称。

而不是 room.push({"element"+ i + : getElement(room)});,您需要:

var foo = {};
foo["element" + i] = getElement(room);
room.push(foo);

使用 ES6,您可以使用计算出的属性名称,因此

room.push({["element" + i]: getElement(room)});

变得合法。

因为您每次迭代都重新初始化elem,所以仍然无法完全达到您想要的效果。采用每个起始数组可能会更好,join他们的元素,并创建结果的完成对象:

var json = {
element1: element1.join(','),
element2: element2.join(',')
};

关于javascript - 对于 array-json 对象中的每个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31709206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com