Map

42 阅读1分钟

为什么提出Map

  1. 在 JavaScript 中,对象(Object)是一种常见的数据结构,用于存储键值对数据。然而,对象的键必须是字符串或符号(Symbol),并且对象的属性是无序的,这在某些场景下可能会带来一些限制或不便

以下是Map的优点

  1. 键的多样性Map键可以是任意类型的值,包括原始数据类型、对象和函数等,而不仅仅局限于字符串或符号。这使得 Map 在需要使用非字符串键的情况下非常有用。
  2. 保持键值对的插入顺序Map 中的键值对数据是有序的,保持插入顺序不变。而对象的属性是无序的,无法保证插入顺序。在需要有序存储键值对数据的场景下,Map 的有序性提供了更好的支持。

Map基本用法

let map = new Map()
map.set('name','keke')
map.set(1,2)
map.set(Symbol('sym'),2)

console.log(map)
 map.forEach(element => {
    console.log(element)
 });
 
 for (const iterator of map) {
    console.log(iterator)
 }

 map.forEach((item,index) => {
    console.log(index,item)
 });