1.需求重现
const arr1 = [1,2,3]
const arr2 = [3,4,5]
console.log(Array.from(new Set([...list1,...list2])))
const arr1 = [{ id: 1,name: "zhangsan" }, { id: 2,name: "lisi" }, { id: 3,name: "wangwu" }];
const arr2 = [{ id: 3,name: "wangwu" }, { id: 4,name: "zhaosi" }, { id: 5,name: "wangmazi" }];
console.log(Array.from(new Set([...arr1,...arr2])))
2.去重函数
function mergeArray<T extends {[property:string]: unknown}>(arr1:T[], arr2:T[],property:string) {
const cloneArr1 = arr1.slice(0);
let v:T;
for (let i = 0; i < arr2.length; i++) {
v = arr2[i];
if (~cloneArr1.findIndex((el) => el[property] === v[property])) {
continue;
}
cloneArr1.push(v);
}
return cloneArr1;
}
console.log(mergeArray(arr1, arr2,"name"));