1 回答
![?](http://img1.sycdn.imooc.com/54584f3100019e9702200220-100-100.jpg)
TA贡献1851条经验 获得超4个赞
不清楚你想要一个输出对象还是数组。
无论如何..你可以尝试像下面这样的东西。
如果你需要一个输出数组。
a = {"BS-WHITE":3,"BS-BOX":1}//input value
b = {"BS-WHITE":2,"BS-BOX":0,"BS-WHITE-1":1}
c = [...new Set([...Object.keys(a), ...Object.keys(b)])];
result = c.map((key) => {
return {
[key]: [(a[key] || 0), (b[key] || 0)]
}
});
console.log(result);
如果你需要一个输出对象。
a = {"BS-WHITE":3,"BS-BOX":1}//input value
b = {"BS-WHITE":2,"BS-BOX":0,"BS-WHITE-1":1}
c = [...new Set([...Object.keys(a), ...Object.keys(b)])];
result = c.reduce((acc,key) => {
acc[key] = [(a[key] || 0), (b[key] || 0)]
return acc;
}, {});
console.log(result);
如果您需要数组数组
a = {"BS-WHITE":3,"BS-BOX":1}//input value
b = {"BS-WHITE":2,"BS-BOX":0,"BS-WHITE-1":1}
c = [...new Set([...Object.keys(a), ...Object.keys(b)])];
result = c.map(key => {
return [key , (a[key] || 0), (b[key] || 0)]
});
console.log(result);
添加回答
举报