Node.js 4.0 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

map

map对象是一个简单的键/值映射。任何值(包括对象和原始值)都可以用作一个键或一个值。

var m = new Map();
var o = {p: "Hello World"};
m.set(o, "content")
m.get(o) // "content"

上面代码使用set方法,将对象o当作m的一个键。

Map也可以接受一个数组作为参数。该数组的成员是一个个表示键值对的数组。

var map = new Map([["name", "张三"], ["title", "Author"]]);
map.size // 2
map.get("name") // "张三"
map.get("title") // "Author"

上面代码在新建Map实例时,就指定了两个键name和title。

注意Map的键实际上是跟内存地址绑定的,只要内存地址不一样,就视为两个键。

  • 如果使用对象作为键名,就不用担心自己的属性与原作者的属性同名。
  • 如果Map的键是一个简单类型的值数字字符串布尔值),则只要两个值严格相等,Map将其视为一个键,包括0-0
  • 另外,虽然NaN不严格相等于自身,但Map将其视为同一个键。
请创建一个map对象,使用set添加键为‘keyString’='a string',值为‘和键'a string'关联的值’,并用get读取此键的值。