需求:
let oldArr = [
{detailId: '1', name: 'a'},
{detailId: '2', name: 'b'},
{detailId: '3', name: 'c'},
{detailId: '4', name: 'd'}
]
let newArr =[
{detailId: '1', name: 'a'},
{detailId: '3', name: 'c'},
]
预期结果:['2', '4']
实现:
export function filterArr(arr1, arr2, prop) {
let id1 = []
let id2 = []
for(let i in arr1){
id1.push( arr1[i][prop])
}
for(let i in arr2){
id2.push( arr2[i][prop])
}
const arr = [...id1, ...id2];
const newArr = arr.filter(item => {
return !(id1.includes(item) && id2.includes(item))
});
return newArr;
},
let ids = filterArr(newArr, oldArr, 'detailId')