在ES6中,可以使用以下几种方法对数组进行去重:
1. 使用Set:Set数据结构本身就具有去重的特性,因此可以将数组转换为Set,然后再转回数组即可。
let arr = [1, 2, 3, 4, 5, 3, 2]; let set = new Set(arr); let uniqueArr = Array.from(set); console.log(uniqueArr); // [1, 2, 3, 4, 5]
2. 使用reduce方法:reduce方法可以对数组进行归约操作,同时也可以利用它来去重,通过reduce方法将数组中的元素归约为一个值,相同的元素会被归约为同一个值,从而达到去重的目的。
let arr = [1, 2, 3, 4, 5, 3, 2]; let uniqueArr = arr.reduce((accumulator, currentValue) => { if (!accumulator.includes(currentValue)) { accumulator.push(currentValue); } return accumulator; }, []); console.log(uniqueArr); // [1, 2, 3, 4, 5]
3. 使用filter方法:filter方法可以创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素,可以利用这个特性来去重,将数组中的重复元素过滤掉。
let arr = [1, 2, 3, 4, 5, 3, 2]; let uniqueArr = arr.filter((value, index, self) => { return self.indexOf(value) === index; }); console.log(uniqueArr); // [1, 2, 3, 4, 5]
以上是ES6中常用的几种去重方法,可以根据具体的需求选择适合的方法进行去重操作。