一、Set数据结构
1、ES6提供了新的数据类型Set。它类似于数组,但是成员的值都是唯一的,没有重复的值
2、Set的实例
Set本身是一个构造函数,用来生成Set数据结构,Set函数接受一个数组或者具有iterable接口的其他数据结构作为参数,用来初始化
const set = new Set([1,2,3,4,4])
console.log(set);//Set(4) { 1, 2, 3, 4 }
console.log([...set]);//[ 1, 2, 3, 4 ]
const s1 = new Set('hello')
console.log(s1);//Set(4) { 'h', 'e', 'l', 'o' }
console.log([...s1]);//[ 'h', 'e', 'l', 'o' ]
3、Set的用途
// 数组去重
console.log([...new Set([1,2,1,2,2,5,3,2])]);
//[1,2,5,3]
//数组去重的另一种方法
function dedupe(array) {
return Array.from(new Set(array))
}
console.log(dedupe([1,1,2,2,3,3]));//[1,2,3]
// 字符串去重
console.log([...