gpt4 book ai didi

javascript - JS数组合并求和

转载 作者:行者123 更新时间:2023-11-30 13:50:28 25 4
gpt4 key购买 nike

我有数组

{"BS-WHITE":3,"BS-BOX":1}//input value
{"BS-WHITE":2,"BS-BOX":0,"BS-WHITE-1":1}//output value

我想合并它们以得到像这样的数组:

[["BS-WHITE",3,2],["BS-BOX",1,0],["BS-WHITE-1",0,1]]

如果值不存在应该为 0。

最佳答案

不清楚你是想要输出对象还是数组。

无论如何..你可以试试下面的方法。

如果你需要一个输出数组。

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);

关于javascript - JS数组合并求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58362557/

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