集合的基本概念:集合是由一组无序且唯一(即不能重复)的项组成的,这个数据结构使用了与有限集合相同的数学概念,应用再计算机的数据结构中。
特点:key 和 value 相同,没有重复的value
ES6提供了数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值
- 如何创建一个Set
const s = new Set([1,2,3]);
console.log(s);
- Set类的属性
// size 相当于数组的length 属性
console.log(s.size); // 3
- Set 类的方法
1、add(value) 添加一个数据,返回Set结构本身
s.add(4).add(5)
console.log(s); // {1,2,3,4,5}
2、delete(value) 删除指定数据,返回一个布尔值,表示是否删除成功
console.log(s.delete(5)); // true
console.log(s); // {1,2,3,4}
console.log(s.delete(5)); // false
3、has(value) 判断该值是否为Set的成员,返回一个布尔值
s.has(6); // false
s.has(1); // true
4、clear() 清楚所有数据,没有返回值
s.clear()
5、keys() 返回键名的遍历器
console.log(s.keys()); // { 1, 2, 3, 4 }
6、values() 返回键值的遍历器
console.log(s.values());// { 1, 2, 3, 4 }
7、entries() 返回键值对的遍历器
console.log(s.entries()); // { [ 1, 1 ], [ 2, 2 ], [ 3, 3 ], [ 4, 4 ] }
8、forEach() 使用回调函数遍历每个成员
s.forEach((value,key,set) => {
console.log(value + "aaa")
})
console.log(s)