去重

方法一:使用Set
JavaScript中的Set对象允许你存储任何类型的唯一值,因此可以利用它来去重数组。

let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // 输出: [1, 2, 3, 4, 5]
方法二:使用filter和indexOf
通过filter方法和indexOf方法,可以过滤掉数组中的重复元素。

let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index);
console.log(uniqueArr); // 输出: [1, 2, 3, 4, 5]
方法三:使用reduce
通过reduce方法,可以逐步构建一个不包含重复元素的新数组。

let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = arr.reduce((acc, item) => {
if (!acc.includes(item)) {
acc.push(item);
}
return acc;
}, []);
console.log(uniqueArr); // 输出: [1, 2, 3, 4, 5]
方法四:使用Map
通过Map对象,可以记录每个元素的出现情况,从而实现去重。

let arr = [1, 2, 2, 3, 4, 4, 5];
let map = new Map();
let uniqueArr = [];

arr.forEach(item => {
if (!map.has(item)) {
map.set(item, true);
uniqueArr.push(item);
}
});

console.log(uniqueArr); // 输出: [1, 2, 3, 4, 5]

posted @ 2024-09-20 09:03  God、夜  阅读(1)  评论(0编辑  收藏  举报