手掌心
2019-03-20 18:19:13
數(shù)據(jù)如下var arr = [{name: "上海", value: 1},{name: "上海", value: 2},{name: "北京", value: 3},{name: "杭州", value: 2}]想要得到的json數(shù)據(jù)arr = [{name: "上海", value: 3},{name: "北京", value: 3},{name: "杭州", value: 2}]
2 回答

守著星空守著你
TA貢獻1799條經(jīng)驗 獲得超8個贊
function trans (arr) {
let obj = {}
let result = []
arr.forEach(({name, value}) => {
let cur = obj[name]
if (cur) {
let index = cur.index
result[index].value += value
} else {
let index = result.length
obj[name] = {
name,
index
}
result.push({name, value})
}
})
return result
}
var arr = [{name: "上海", value: 1},{name: "上海", value: 2},{name: "北京", value: 3},{name: "杭州", value: 2}]
trans(arr)
添加回答
舉報
0/150
提交
取消