一个数组问题重复值合并问题

constary=[{
code:1,
num:20,
},{
code:1,
num:10,
},{
code:2,
num:15,
}]
//怎样得出下面结果?
constary=[{
code:1,
num:30,
},{
code:2,
num:15,
}]
大话西游666
浏览 450回答 2
2回答

拉莫斯之舞

constary=[{code:1,num:20},{code:1,num:10},{code:2,num:15}]functionmerge(list){letresult=[]letcache={}list.forEach(item=>{letkey=item.codeletindex=cache[key]if(index!==undefined){result[index].num+=item.num}else{result.push(Object.assign({},item))cache[key]=result.length-1}})returnresult}merge(list)

慕码人2483693

functionmerge(arr){letres={};for(letitemofarr){if(res[item.code])res[item.code].num+=item.num;elseres[item.code]={code:item.code,num:item.num};//Avoidmodifyingtheoriginalobject.}returnObject.values(res);}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript