如何將兩個數組對象的相同屬性進行操作(更簡潔)

我們以前可以使用雙循環,來判斷條件,達到目的,這裏我們使用更簡潔的方法:

合併數組,然後通過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));
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章