1.使用Set数据结构
????????Set是一种新的数据结构,它可以去除重复的值。我们可以将数组转化为Set,然后再将Set转化回数组即可。
let arr = [1, 2, 3, 4, 3, 2, 1];
let uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4]
2.使用indexOf方法和filter方法
????????我们可以使用indexOf方法遍历数组,如果在当前索引之前找不到该元素,则说明该元素是唯一的,然后使用filter方法来返回唯一的元素数组。
let arr = [1, 2, 3, 4, 3, 2, 1];
let uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index);
console.log(uniqueArr); // [1, 2, 3, 4]
3.使用includes方法和filter方法
????????与indexOf方法类似,我们也可以使用includes方法遍历数组,如果在当前索引之前找不到该元素,则说明该元素是唯一的,然后使用filter方法来返回唯一的元素数组。
let arr = [1, 2, 3, 4, 3, 2, 1];
let uniqueArr = arr.filter((item, index) => arr.includes(item, index + 1) === false);
console.log(uniqueArr); // [1, 2, 3, 4]