JavaScript Map 参考
Map 存储键值对,其中键可以是任何数据类型。
Map 会记住键的原始插入顺序。
示例
// 创建一个 Map
const fruits = new Map([
["apples", 500],
["bananas", 300],
["oranges", 200]
]);
自己动手试一试 »
Map 方法和属性
| 方法 | 描述 |
|---|---|
| new Map() | 创建一个新的 Map 对象 |
| clear() | 移除 Map 中的所有元素 |
| delete() | 移除 Map 中由键指定的元素 |
| entries() | 返回一个包含 Map 中 [key, value] 对的迭代器对象 |
| forEach() | 为 Map 中的每个键/值对调用回调函数 |
| get() | 获取 Map 中键对应的值 |
| groupBy() | 根据返回的回调值对对象元素进行分组 |
| has() | 如果 Map 中存在某个键,则返回 true |
| keys() | 返回一个包含 Map 中键的迭代器对象 |
| set() | 设置 Map 中键对应的值 |
| 大小 | 返回 Map 中的元素数量 |
| values() | 返回 Map 中值的迭代器对象 |
您可以使用 set() 方法向 map 添加元素
示例
// 创建一个 Map
const fruits = new Map();
// 设置 Map 值
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);
自己动手试一试 »
您可以使用 get() 方法从 map 获取元素
JavaScript 对象与 Map 对比
JavaScript 对象和 Map 之间的区别
| 对象 | Map |
|---|---|
| 不可直接迭代 | 可直接迭代 |
| 没有 size 属性 | 有 size 属性 |
| 键必须是字符串(或 Symbol) | 键可以是任何数据类型 |
| 键的顺序不确定 | 键按插入顺序排序 |
| 有默认键 | 没有默认键 |