This question already has answers here:
Sum similar keys in an array of objects [closed]
(5个答案)
2年前关闭。
我有一个这样的对象数组:
我想要这样的东西
我怎样才能做到这一点?
(5个答案)
2年前关闭。
我有一个这样的对象数组:
[
{
id:1,
val: 5
},
{
id:1,
val: 5
},
{
id:2,
val: 6
},
{
id:2,
val: 7
}
]
我想要这样的东西
[
{
id:1,
val: 10
},
{
id:2,
val: 13
},
]
我怎样才能做到这一点?
最佳答案
var t=[
{
id:1,
val: 5
},
{
id:1,
val: 5
},
{
id:2,
val: 6
},
{
id:2,
val: 7
}
]
t.reduce((acc,elem)=>{
if(acc.filter((elemi)=>elemi.id==elem.id)[0])acc.filter((elemi)=>elemi.id==elem.id)[0].val+=elem.val;
else acc.push(elem);
return acc
}
,[])
关于javascript - 如何合并包含相同ID的对象数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47650380/
10-12 14:21