Map类型

每一个节点由key、value组成。
关键点在JS中Map和Object在性能上的差异不大,使用Map时更多的是考虑其具有的特性。

  • 可迭代
  • key可以是任意数据类型,而不仅仅只是string或者symbol
  • map的key值是唯一的,后面插入的key值会覆盖前者。这一点特性对象类型也有。

    Map(iteratable object)

    接受形参是一个可迭代的对象。
    1. const myMap = new Map([
    2. [1, 'one'],
    3. [2, 'two'],
    4. [3, 'three'],
    5. ])

    实例化对象

    image.png
    Map类型 - 图2

    原型方法

    Map类型 - 图3

    注释说明

    Map.protortype.forEach( callBackFn([value, key, map]) { … }, thisArg) )

    语义给每次迭代增加方法。
    关键点注意回调函数形参的顺序是value、key,不是key、value。 ```javascript var map = new Map([ [‘a’, 1], [‘b’, 2], ]);

var valueIterator = map.values(); var a = map.forEach((value, key) => { console.log(${key} : ${value + 1}); //a : 2 b : 3 }) ```