ES6 键值对集合
文章目录
一、Set集合
1、什么是Set集合
const set = new Set()
console.log(set);//Set {}
console.log(Set.prototype);//Set {}
1、ECMAScript 6 提供了Set构造函数,创建Set对象
Set集合 - 值(唯一的)的集合
Set对象是值的集合,按照插入的顺序迭代他的元素,Set集合中的元素是唯一的。
const set = new Set()
console.log(set);//Set {}
console.log(Set.prototype);//Set {}
var arr = [1, 1, 2, 2, 3, 4, 7, 6]
console.log(new Set(arr));//Set { 1, 2, 3, 4, 7, 6 }
可以利用Set集合为数组去重
2、 NaN、undefined等值在Set集合中的存储
NaN、undefined等值允许被存储在Set集合中
NaN值在Set集合中被认为是相等的
console.log(new Set([NaN,NaN,undefined,undefined,null,null]));//Set { NaN, undefined, null }
3、Set集合存储复杂数据类型
空数组和空对象表示
- 多个空数组和空对象表示多个值
- 多个函数依旧也表示多个值
console.log(new Set([[],[],{},{},function(){},function(){}]));//Set { [], [], {}, {},[Function], [Function] }
2、Set集合的属性方法
属性:
size属性:返回Set对象的值的个数
方法:
方法 | 作用 |
---|---|
add(value) | 向Set集合的结尾添加新元素 返回值:添加新元素后的Set集合 |
delete(value) value:表示Set集合中的元素内容 返回值:布尔值,true表示删除成功;false表示删除失败 |
从集合中删除指定元素 |
has(value) value:表示Set集合中的元素内容 返回值:布尔值,true表示删除成功;false表示删除失败 |
判断指定Set集合中是否有指定元素 |
clear(value) | 清空Set集合 |
3、创建Set集合
使用数组将Set集合进行初始化操作
var arr = [1, 1, 2, 2, 3, 4, 7, 6]
console.log(new Set(arr));//Set { 1, 2, 3, 4, 7, 6 }
创建空