根据content相同,然后自动合并成同一个数组里面,并计算number的总和,最后输出:
const list = [{"content":1,"number":1},{"content":1,"number":3,},{"content":1,"number":5}];
效果
[{"content":1,"num":9}];
union(arr) {
arr = arr || []
var tmp = {}
for (var i = 0, len = arr.length; i < len; i++) {
var obj = arr[i]
if (obj.content in tmp) {
tmp[obj.content].number += obj.number
} else {
tmp[obj.content] = obj
}
}
var result = []
for (var key in tmp) {
result.push(tmp[key])
}
return result
}
this.union( [{"content":1,"number":1},{"content":1,"number":3,},{"content":1,"number":5}])