ES6另外一个新增的数据结构是Map,用于存储映射关系。
我们在ES6之前就可以用对象来存储映射关系了,那还需要Map吗?
- const obj1 = {
- name:"key"
- }
- const map = new Map()
- map.set(obj1,"这个是value")
- console.log(map.get(obj1))
创建了一个Map对象,使用set将对象obj1作为key,用get获取obj1对应的value。
- const map1 = new Map([
- [obj1, "abc"],
- [obj2, "abc"],
- [obj3, "abc"],
- ])
- console.log(map1.get(obj1));
- console.log(map1.get(obj2));
- console.log(map1.get(obj3));
Map的常见方法
Map常见的属性
Map常见的方法:
Map也可以通过for of进行遍历。
和Map类型的另外一个数据结构称之为WeakMap,也是以键值对的形式存在的。
那么和Map有什么区别呢?
WeakMap常见的方法有四个: