gpt4 book ai didi

javascript - 将新对象插入循环中的现有对象中

转载 作者:行者123 更新时间:2023-11-28 17:51:47 26 4
gpt4 key购买 nike

我正在循环一些 JSON,并尝试在每次迭代时将新对象推送到现有的“主”对象中。基本上,我正在寻找一种将对象推送到对象中的推送方法,而不是将它们推送到数组中。

这只会推送本地对象中的一个对象。

var local = {};
for (let i = 0; i < data[2].length; i++) {
let friend = {};
friend.name = data[2].users[i][0].name;
friend.screenName = data[2].users[i][0].name;
friend.avatar = data[2].users[i][0].name;

local["friend"] = friend;
};

理想情况下,我希望最终的本地对象看起来像这样:

{ friend: 
{ name: '123',
screenName: '123',
avatar: '123' },
{ name: '123',
screenName: '123',
avatar: '123' },
{ name: '123',
screenName: '123',
avatar: '123' },
{ name: '123',
screenName: '123',
avatar: '123' } }

最佳答案

只需使用一组 friend 即可:

var local = {
friends:[]//an array of friends
};
for (let i = 0; i < data[2].length; i++) {
let friend = {};
friend.name = data[2].users[i][0].name;
friend.screenName = data[2].users[i][0].name;
friend.avatar = data[2].users[i][0].name;
local.friends.push(friend);
};

或者使用 map 可能更容易:

var local={
friends:data[2].users.map(el=>({
name:el.name,
screenName:el.name,
avatar:el.name
}))
};
<小时/>

所以这个结构就出现了:

 {
friends: [
{ name: '123',
screenName: '123',
avatar: '123' },
{ name: '123',
screenName: '123',
avatar: '123' },
{ name: '123',
screenName: '123',
avatar: '123' },
{ name: '123',
screenName: '123',
avatar: '123' }
]
}

关于javascript - 将新对象插入循环中的现有对象中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45373456/

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