1.Map基本语法
let map = new Map();
let obj = {
name: 'Leon',
sex: 'male'
};
map.set(obj,'myObject');
map.get(obj); // "myObject"
map.has(obj) //true
map.delete(obj) //true
map.has(obj) // false
ES6新增了 Map数据结构,Map对象保存键值对,任何值(原始值或对象)都可以作为一个键或一个值。
1.1 实例属性和方法
操作方法
set(key,value):set方法设置键名key对应的键值为value,然后返回整个 Map 结构。
get(key):获取key的值
has(key):has方法返回一个布尔值,表示某个键是否在当前 Map 对象之中
delete(key):delete方法删除某个键,返回true。如果删除失败,返回false
clear():清空Map对象
遍历方法
keys():返回键名的遍历器
values():返回键值的遍历器
entries():返回所有成员的遍历器
forEach():遍历 Map 的所有成员
2.模拟实现
class MyMap{
constructor(iterator = []){
if(typeof iterator[Symbol.iterator] !== "function"){
throw new