JavaScript Maps
Map 包含键值对,其中键可以是任何数据类型。
Map 会记住键的原始插入顺序。
如何创建一个 Map
你可以通过以下方式创建 JavaScript Map:
- 将数组传递给
new Map()
- 创建 Map 并使用
Map.set()
new Map() 方法
你可以将数组传递给 new Map()
构造函数来创建一个 Map。
示例
// 创建一个 Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
自己动手试一试 »
set() 方法
你可以使用 set()
方法向 Map 添加元素。
示例
// 创建一个 Map
const fruits = new Map();
// 设置 Map 值
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
自己动手试一试 »
set() 方法也可用于更改现有的 Map 值。
get() 方法
get() 方法获取 Map 中键的值。
Map 是 Object
typeof
返回 object
instanceof
Map 返回 true
JavaScript Object 与 Map 对比
JavaScript Object 和 Map 之间的区别
对象 | Map |
---|---|
不能直接迭代 | 可直接迭代 |
没有 size 属性 | 有 size 属性 |
键必须是字符串(或 Symbol) | 键可以是任何数据类型 |
键顺序不明确 | 键按插入顺序排列 |
有默认键 | 没有默认键 |
浏览器支持
Map
是 ES6 功能(JavaScript 2015)。
自 2017 年 6 月起,所有现代浏览器都完全支持 ES6
Chrome 51 | Edge 15 | Firefox 54 | Safari 10 | Opera 38 |
2016 年 5 月 | 2017 年 4 月 | 2017 年 6 月 | 2016 年 9 月 | 2016 年 6 月 |
Map
在 Internet Explorer 中不受支持。