JavaScript数组去重的五种方法如下:
1.使用 Set 去重:
let arr = [1, 2, 2, 3, 3, 4, 5, 5];
let uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr); // [1, 2, 3, 4, 5]
2.使用 filter 方法去重:
let arr = [1, 2, 2, 3, 3, 4, 5, 5];
let uniqueArr = arr.filter((item, index, arr) => {
return arr.indexOf(item) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
3.使用 reduce 方法去重:
let arr = [1, 2, 2, 3, 3, 4, 5, 5];
let uniqueArr = arr.reduce((prev, cur) => {
if (prev.indexOf(cur) === -1) {
prev.push(cur);
}
return prev;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]
4.使用 地图
let arr = [1, 2, 2, 3, 3, 4, 5, 5];
let map = new Map();
let uniqueArr = [];
for (let i = 0; i < arr.length; i++) {
if (!map.has(arr[i])) {
map.set(arr[i], true);
uniqueArr.push(arr[i]);
}
}
console.log(uniqueArr); // [1, 2, 3, 4, 5]
5.使用 indexOf 去重:
let arr = [1, 2, 2, 3, 3, 4, 5, 5];
let uniqueArr = [];
for (let i = 0; i < arr.length; i++) {
if (uniqueArr.indexOf(arr[i]) === -1) {
uniqueArr.push(arr[i]);
}
}
console.log(uniqueArr); // [1, 2, 3, 4, 5]
以上五种方法都可以实现 JavaScript 数组去重,其中使用 Set 去重是最简单和效率最高的方法。