美文网首页
两个数组对象的合并记录

两个数组对象的合并记录

作者: chouchou723 | 来源:发表于2019-11-08 16:44 被阅读0次

假设有两组数组,其中的对象有一个指定的属性一致,根据一样的属性进行合并

let a = [{name:1,title:1},{name:2,title:2}]
let b = [{name:1,src:3},{name:2,src:3}]
let c= [...a,...b];
let dd =c.reduce((prev,next)=>{//reduce中return的元素会作为prev继续使用
       prev[next.name]?prev[next.name]={...next,...prev[next.name]}:prev[next.name]={...next}
       return prev
        },{})
console.log(Object.values(dd))

reduce的参考用法:

var arrString = 'abcdaabc';
arrString.split('').reduce(function(res, cur) {
    res[cur] ? res[cur] ++ : res[cur] = 1
    return res;
}, {})

相关文章

网友评论

      本文标题:两个数组对象的合并记录

      本文链接:https://www.haomeiwen.com/subject/bhrwbctx.html