1. 利用 Set 数据结构进行数组去重
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr); // [1, 2, 3, 4, 5]
  1. 利用 forEach 循环和 indexOf 方法进行数组去重
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const uniqueArr = [];
arr.forEach(item => {
  if (uniqueArr.indexOf(item) === -1) {
    uniqueArr.push(item);
  }
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
  1. 利用 filter 方法和 indexOf 方法进行数组去重
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const uniqueArr = arr.filter((item, index) => {
  return arr.indexOf(item) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
  1. 利用 reduce 方法和 includes 方法进行数组去重
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const uniqueArr = arr.reduce((prev, cur) => {
  if (!prev.includes(cur)) {
    prev.push(cur);
  }
  return prev;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]
  1. 利用 Map 数据结构进行数组去重
const arr = [1, 1, 2, 3, 3, 4, 5, 5];
const map = new Map();
const uniqueArr = [];
arr.forEach(item => {
  if (!map.has(item)) {
    map.set(item, true);
    uniqueArr.push(item);
  }
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
写五种js数组去重方案

原文地址: http://www.cveoy.top/t/topic/qWp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录