ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。
Array.from方法可以将 Set 结构转为数组。
例如:
const items = new Set([1, 2, 3, 4, 5]);
const array = Array.from(items);
利用这些特点可以得出两种数组去重的方法:
方法一:利用展开运算符和Set成员的唯一性
let arr = [1, 2, 3, 2, 1];
function unique(arr){
return [...new Set(arr)];
}
console.log(unique(arr)) // [1, 2, 3]
方法二:利用Array.from和Set成员的唯一性
let arr = [1, 2, 3, 2, 1];
function unique(arr){
return Array.from(new Set(arr));
}
console.log(unique(arr)) // [1, 2, 3]