Map() 、 WeakMap() 其实与 Set() 、 WeakSet() 的方法与特性大致相同,这里只是来说一下他们的不同
关于Set() 与 WeakSet() :ES6:Set() 与 WeakSet()
新建一个Map()
const people = new Map([['Tom', 18], [ 'Jerry', 21], ['Mario', 25]]);
可以明显看出来Map与Set的区别就是Map所存储的是键值对一样的数据,如果把Set比作是数组的改进,那么Map就是对象的改进
在控制台打印它:
可以明显看出它的成员都是键值对出现的,这里的key不是索引,而是每个键值对的键名
这里的clear(),delete(),has(),size,forEach()等等方法及属性以及特性与Set相同,同样WeakMap与WeakSet也一样,不做过多说明,可以查看:ES6:Set() 与 WeakSet()
set()
Map不具备 add() 方法,取而代之的是 set() 方法:
其key可以是任意类型的数据,比如是空对象:
get()
get() 是Map所特有的,他可以通过查找键名返回其对应的键值: