=====================map======================== map集合专门用于存储多个键值对数据,键值对(key value pair) 数据集合的特点:键不可重复 在map出现之前,我们使用的是对象的方式来存储键值对,键是属性名,值是属性值。 使用对象存储有以下问题: 1. 键名只能是字符串 2. 获取数据的数量不方便, Object.keys() 来获取 3. 键名容易跟原型上的名称冲突 4. 如何创建map: l例如: new Map() // 创建一个空的map new Map(iterator); // 创建一个具有初始内容的map, 初始内容来自于可迭代对象 每一次迭代的结果,但是,它要求每一次迭代的结果必须是要给长度为2的数组,数组第一项是键,数组第二项是值 例如:const m = new Map([["a",1],["b",2]]); map的方法; 1. size: 获取map键的数量 2. set(): 设置一个键值对 , 如果键不存在,添加一个, 比较键存不存在,和set是一样的, 对象比较的是地址 如果键存在,修改对应键的值 3. get(): 获取对应键的值 4. has(): 判断某个键是否存在 5. delete(): 删除指定的键 6. clear(): 清空map所有的键值对 map如何和数组想混转换 使用展开运算符,和set是一样的 map如何遍历: 1. 使用for of 来遍历,每一次得到的是一个长度为2的数组 2. forEach,t通过回调 第一个参数: map键 第一二个参数: map值 第一个参数: map本身