Map对象的方法
JS中Map对象的方法有clear、delete、entries、forEach、get、has、keys、set、size、values,其中可用于遍历的有entries
forEach
keys
values
。
方式1 直接使用for of
语句
第1种Map对象的遍历方法:
const map = new Map([['a', 2], ['b', 3]]) // 构建一个Map
for (let i of map) console.log(i, i[0], i[1], i['a'], i.key)
输出结果:
可以看到:实现了遍历,并以键值对数组的方式输出。
方式2 for of
语句结合entries
keys
values
第2种Map对象的遍历方法:
for (let i of map.entries()) console.log(i) // 遍历entries,以数组输出
for (let i of map.keys()) console.log(i) // 遍历keys,输出键
for (let i of map.values()) console.log(i) // 遍历values,输出值
输出结果:
可以看到:
- 遍历
map.entries()
得到结果和直接遍历map
一致,输出键值对数组; - 遍历
map.keys()
是将所有的键遍历一遍; - 遍历
map.values()
是将所有的值遍历一遍。
可以根据不同的场景决定方法的使用。
方式3 使用forEach
方法
第3种Map对象的遍历方法:
map.forEach((value, key, map) => {
console.log(value, key, map)
})
输出结果:
可以看到:map.forEach()
方法也实现了遍历,根据输出value
为值,key
为键,map
为对象本身。实际使用过程中,参数value
是必须的,key
和map
则是可选参数。
总结
Map对象的遍历主要还是通过for
或forEach
的方式,根据使用场景选择方法或参数。
另外,for in
无法遍历Map对象!
笔记主要为自用,欢迎友好交流!