-
使用 Set:
Set 是 ES6 中引入的一种数据结构,它只允许存储唯一的值,可以利用这一特性来实现数组去重。
const array = [1, 2, 2, 3, 4, 4, 5]; const uniqueArray = [...new Set(array)];
-
使用 indexOf 或 includes 方法:
遍历原数组,将不重复的元素添加到新数组中。
const array = [1, 2, 2, 3, 4, 4, 5]; const uniqueArray = []; array.forEach((element) => {if (uniqueArray.indexOf(element) === -1) {uniqueArray.push(element);} });
或者使用
includes
方法:const array = [1, 2, 2, 3, 4, 4, 5]; const uniqueArray = []; array.forEach((element) => {if (!uniqueArray.includes(element)) {uniqueArray.push(element);} });
-
使用 filter 方法:
利用 filter 方法和 indexOf 或 includes 方法来创建新数组。
const array = [1, 2, 2, 3, 4, 4, 5]; const uniqueArray = array.filter((element, index, self) => {return self.indexOf(element) === index; });
或者使用
includes
方法:const array = [1, 2, 2, 3, 4, 4, 5]; const uniqueArray = array.filter((element, index, self) => {return !self.includes(element, index + 1); });
-
使用 reduce 方法:
使用 reduce 方法遍历数组,将不重复的元素添加到累积的结果中。
econst array = [1, 2, 2, 3, 4, 4, 5]; const uniqueArray = array.reduce((accumulator, element) => {if (!accumulator.includes(element)) {accumulator.push(element);}return accumulator; }, []);