利用 ES6 Map()方法 封装一个去重函数
let list1 = [
{
id: 1,
name: "小明",
},
{
id: 2,
name: "张三",
},
{
id: 3,
name: "张三",
},
{
id: 4,
name: "小明",
},
{
id: 5,
name: "灰太狼",
},
];
function repetition(arr, key) {
const map = new Map();
const newArr = [];
for (let i = 0; i < arr.length; i++) {
const el = arr[i];
// el[key] => key传入的是数组里面需要对比的值
if (!map.has(el[key])) {
map.set(el[key], true);
newArr.push(el);
}
}
return newArr;
}
// 调用函数
const response = repetition(list1, "name");
console.log(response);
打印结果为: