如何将两个不同的数组数据呈现为一个对象数组



在我的react状态下,数据进入两个不同的数组,我希望我的组件为put both arrays data in a single array。这是我为这两个数组使用的数据格式:

data: {
array1: [
{
name: "John Doe"
},
{
name: "Bob Williams"
}
]
array2: [
{
name: "Clark Kent"
},
{
name: "Bruce Wayne"
}
]
}

我如何让我的代码返回数据,使最终结果看起来像下面定义的:

_.map(Object.values(this.state.data), (item,key) => {
return _.map(item, (data) => {
return {
name: data.name
}
})
})

所需输出:

data: [
{ name: "John Doe" },
{ name: "Bob Williams" },
{ name: "Clark Kent" },
{ name: "Bruce Wayne" }
]

您可以使用Spread operator ...将2个数组合并为一个。

const data = {array1:[{name:"John Doe"},{name:"Bob Williams"}],array2:[{name:"Clark Kent"},{name:"Bruce Wayne"}]};;
const result = {data: [...data.array1, ...data.array2]};
console.log(result);

使用Array.prototype.flat((

const data = Object.values(this.state.data).flat();
Object.values(this.state.data).reduce((p, c) => p.concat(c), []);

最新更新