数组对象相同id添加计数和并使用一个新的字段totalNum
let arr = [
{
id: 1,
num: 2
},
{
id: 2,
num: 4,
},
{
id: 1,
num: 7,
}
]
=======> 组成以下数据
[
{
id: 1,
num: 2,
totalNum:9
},
{
id: 2,
num: 4,
totalNum:4
},
{
id: 1,
num: 7,
totalNum:9
}
]
======> 方法如下
dd(arr) {
arr.totalElements.forEach(item => {
const sameId = arr.totalElements.find(v => v.time === item.time);
const sameIdList = arr.totalElements.filter(v => v.time === item.time).map(v => v.num);
const sameIdTotal = sameIdList.reduce((pre, c) => {
return pre + c
}, 0)
if (sameId) {
item['totalNum'] = sameIdTotal;
} else {
item['totalNum'] = item.num
}
})
return arr
}