JavaScript
/ 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 值:
实例
fruits.set("apples", 200);
运行实例 »点击 "运行实例" 按钮查看在线实例
get() 方法
get() 方法获取 Map 中键的值:
实例
fruits.get("apples"); // 返回 500
运行实例 »点击 "运行实例" 按钮查看在线实例
Map 是对象
typeof 返回 object:
实例
// 返回 object: typeof fruits;运行实例 »
点击 "运行实例" 按钮查看在线实例
instanceof Map 返回 true:
实例
// 返回 true: fruits instanceof Map;运行实例 »
点击 "运行实例" 按钮查看在线实例
JavaScript 对象与 Map 的区别
以下是 JavaScript 对象与 Map 的区别:
| 对象 | Map |
|---|---|
| 不可直接迭代 | 可直接迭代 |
| 没有 size 属性 | 有 size 属性 |
| 键必须是字符串或 Symbol | 键可以是任何数据类型 |
| 键的顺序不明确 | 键按插入顺序排序 |
| 有默认键 | 没有默认键 |
完整的 Map 参考手册
如需完整参考,请访问我们的:JavaScript Map 参考手册。
该手册包含所有 Map 属性和方法的描述和实例。
浏览器支持
Map 是 ES6 的特性(JavaScript 2015)。
自 2017 年 6 月起,所有现代浏览器均支持 ES6:
| Chrome | Edge | Firefox | Safari | Opera |
|---|---|---|---|---|
| Chrome 51 | Edge 15 | Firefox 54 | Safari 10 | Opera 38 |
| 2016 年 5 月 | 2017 年 4 月 | 2017 年 6 月 | 2016 年 9 月 | 2016 年 6 月 |
Internet Explorer 不支持 Map。