两个数组比较去重
/* * 两个数组比较去重 * list1: 数组一 * list2: 数组二,去除list2中 与list1重复的对象,返回剩下没有重复的对象 * prop:比较的属性 */ arrayUnrepeat (list1, list2, prop = 'id') { // 首先构造Object const idSet = list1.reduce((acc, v) => { acc[v[prop]] = true; return acc; }, {}); // console.log('构造Object', idSet) // 遍历list2,去掉在idSet中存在的id const result = list2.filter(v => !idSet[v[prop]]); const repeat = list2.filter(v => idSet[v[prop]]); // console.log('去重后的result', result) // console.log('重复的repeat', repeat) return { result, repeat } }
const newKey = new Set(carNoArr); // key去重