这个对象数组怎么合并呢?-灵析社区

Ufoooo4U

let list = [ {name:'选项1',value:1}, {name:'选项2',value:2}, {name:'其他',value:3}, {name:'其他',value:4}, {name:'其他',value:5} ] 怎么把 `name` 等于选项 `3` 的合并成一条呢,然后把 `value` 加起来,比如合并成 [{name:'选项1',value:1},{name:'选项2',value:2},{name:'其他',value:12}]

阅读量:19

点赞量:0

问AI
Daily毅星
let res = list.reduce((arr, item) => { let target = arr.find(citem => citem.name == item.name) if(target){ target.value += item.value }else{ arr.push({...item}) } return arr }, [])