已知 array1 = [ {id: 1, num:10}, {id: 2, num:20}, {id: 3, num: 30} ] 和
array2 = [ {id: 2, num:20}, {id: 3, num: 30}, {id: 4, num: 40} ] 两个数组,
如何得到newArray = [ {id: 1, num:10}, {id: 2, num:20}, {id: 3, num: 30}, {id: 4, num: 40} ]
方法一:
let diff = array2.filter( item => !array1.some( ele => ele.id === item.id) )
newArray = array1.push(...diff)
方法二:
let ids = array1.map( item => item.id )
let diff = array2.filter( item => !ids.includes(item.id) )
newArray = array1.push(...diff)