我有一个像这样的数组:
[
32545343: {
data: [{id: 1}, {id: 2}]
},
547347: {
data: [{id: 1}, {id: 4}]
},
95757: {
data: [{id: 1}, {id: 6}]
},
]
如何将所有数据数组合并到一个数组中,而不复制具有相同 id 的对象,如下所示:
[{id: 1}, {id: 2}, {id: 4}, {id: 6}]
最佳答案
使用 Set
的解决方案结构
var d = { 32545343: { data: [{ id: 1 }, { id: 2 }] }, 547347: { data: [{ id: 1 }, { id: 4 }] }, 95757: { data: [{ id: 1 }, { id: 6 }] }, };
var set = new Set();
Object.keys(d).forEach(a =>
d[a].data.forEach(b => set.add(JSON.stringify(b))));
document.write(Array.from(set));
关于javascript - 合并 JavaScript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36105352/