gpt4 book ai didi

javascript - 将数组的项合并为单个对象

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

我有一个或多个对象数组,每个对象都有两个属性,其中一个是数组。所以它看起来像这样:

[
[{
name: 'Object1',
items: ['item1', 'item2', 'item3']
}],
[{
name: 'Object2',
items: ['item4', 'item5', 'item6']
}],
[{
name: 'Object3',
items: ['item7', 'item8', 'item9']
}]

]

我想要做的是使所有项目都存储到对象1中。基本上,这就是我想要的样子:

[
{
name: 'Object1',
items: ['item1', 'item2', 'item3', 'item4', 'item5', 'item6', 'item7', 'item8', 'item9']
}
]

我想我可以创建一个新对象并映射每个项目,然后将它们连接起来,但我正在寻找一种更有效的方法来做到这一点。完成此任务的最佳方法是什么?

最佳答案

您可以使用Array.flatMap()destructuring获取单个数组中的所有项目。然后将该数组分配给 items 属性。

注意:IE 和 Edge 不支持 Array.flatMap()

const arr = [[{"name":"Object1","items":["item1","item2","item3"]}],[{"name":"Object2","items":["item4","item5","item6"]}],[{"name":"Object3","items":["item7","item8","item9"]}]];

const result = [{
name: 'Object1',
items: arr.flatMap(([o]) => o.items)
}];

console.log(result);

关于javascript - 将数组的项合并为单个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52957583/

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