Set
类似于数组,但是成员的值都是唯一的,没有重复的值,有序。
set函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化。
用途
数组去重:
[...new Set(array)]
或
Array.from(new Set(array));
字符串去重:
[...new Set('ababbc')].join('')
// "abc"
Map
“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键
任何具有 Iterator 接口、且每个成员都是一个双元素的数组的数据结构(详见《Iterator》一章)都可以当作Map构造函数的参数
只有对同一个对象的引用,Map 结构才将其视为同一个键。这一点要非常小心。
Map 的键实际上是跟内存地址绑定的,只要内存地址不一样,就视为两个键。这就解决了同名属性碰撞(clash)的问题,我们扩展别人的库的时候,如果使用对象作为键名,就不用担心自己的属性与原作者的属性同名。
Map 的遍历顺序就是插入顺序,对象无序
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。