介绍
Set 和 Map 主要的应用场景在于 数据重组 和 数据储存。 Set 是一种叫做集合的数据结构,Map 是一种叫做字典的数据结构。 ES6 新增的一种新的数据结构,类似于数组,但成员是唯一且无序的,没有重复的值。 Set 本身是一种构造函数,用来生成 Set 数据结构
一、set
1、定义:set是一种数据结构,类似于数组,但成员的值都是唯一的。
2、去除数组的重复成员:[...new set(array)]。
3、set实例的属性和方法
3.1、set.prototype.size 总数
3.2、set.prototype.add(value) 添加值,返回set本身
3.3、set.prototype.delete(value) 删除值,返回布尔值,表示删除是够成功
3.4、set.prototype.has(value) 返回布尔值,表示该值是否是set成员
3.5、set.prototype.clear() 清除所有成员,无返回值
4、Array.from方法可以将set结构转化为数组
例:const items = new Set([1,2,3,4,5])
const array = Array.from(items)
5、遍历
5.1、forEach(键值,键名,集合本身);
5.2、扩展运算符(...)
二、Map
1、定义:Map数据结构,类似于对象,也是键值对的集合,但是键不仅仅局限于字符串,各种类型的值都可以。
2、方法(简单罗列,不做一一描述)
set()、get()、has()、delete()、clear()
3、转换
3.1、对象转换成Map let map = new Map(Object.entries(obj));
3.2、Map转为数组 [...myMap]