如何将两个数组对象的相同属性进行操作(更简洁)

我们以前可以使用双循环,来判断条件,达到目的,这里我们使用更简洁的方法:

合并数组,然后通过obj[v.name]=obj[v.name]===undefined)判断其条件,将两个数组对象的相同属性将对应的type变为1。

var arr1=[
    {name:'a'},
    {name:'b'},
    {name:'c'}
]
var arr2=[
    {name:'a',type:'0'},
    {name:'b',type:'0'},
    {name:'d',type:'0'}
]
var obj = {};
function get(arr1,arr2){
    return [...arr1,...arr2].filter(v=>{
            if(!(obj[v.name]=obj[v.name]===undefined)){
                return v.type='1'
            }
    })
}
console.log(get(arr1,arr2));




作者:Vam的金豆之路

主要领域:前端开发

我的微信:maomin9761

微信公众号:前端历劫之路