Set是ES6新提供的数据结构。
Set类似数组,但是成员的值都是唯一的,没有重复。
Set本身是一个构造函数,用来生成Set数据结构。
证明Set中不可以存在重复值的实例
1、如果可以存在重复值,长度应该为8.
2、利用Set可以进行数组去重。
NaN和{}
1、精确运算符下,NaN是不等于自身的。但是Set中认为NaN和NaN是相等的。
2、可以看出在一个set结构中,添加两次NaN,最后里面只有一个NaN。但是添加两个{},会认为{}和{}是不用的对象。长度变为2.
Set实例的属性
Set.prototype.constructor 是指构造函数,默认是Set函数。
Set.prototype.size 返回Set实例的成员总数。
Set的操作方法
1、add() 添加某个值,返回Set结构本身。
2、delete() 删除某个值,返回一个布尔值,表示删除是否成功。
3、has() 表示某个参数是否是Set成员,返回布尔值。
4、clear() 清除所有成员,没有返回值
Set遍历操作
1、keys() 返回键名的遍历器。
2、values() 返回键值的遍历器。
3、entries() 返回键值对的遍历器
4、forEach() 使用回调函遍历每个成员。
5、数组的map和filter方法也可以用于Set。
map使用:
filter使用:(filter如果不是过滤条件,会把所有的数组吐出)
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。