Kitabu cha Mafunzo cha JavaScript Map

Map ina ukubadilika kwa thamani zote, kwa sababu ya kichwa cha chaguo kinaweza kuwa aina yoyote ya data.

Map itakayaja muda wa upelewa wa kichwa cha chaguo cha kwanza.

Map method na mali

Method/Mwili Maelezo
new Map() Kuangchuang mpya ya Map.
clear() 移除 Map 中的所有元素。
delete() 通过键移除 Map 中的元素。
entries() 返回包含 Map 中 [键, 值] 对的迭代器对象。
forEach() 为 Map 中的每个键/值对调用回调函数。
get() 获取 Map 中某个键的值。
groupBy() 根据回调函数返回的值对对象元素进行分组。
has() 如果 Map 中存在某个键,则返回 true。
keys() 返回包含 Map 中键的迭代器对象。
set() 为 Map 中的某个键设置值。
size 返回 Map 中元素的数量。
values() 返回包含 Map 中值的迭代器对象。

实例

例子 1

// 创建 Map
const fruits = new Map([
  ["apples", 500],
  ["bananas", 300],
  ["oranges", 200]
]);

亲自试一试

例子 2

您可以使用 set() 方法向 Map 中添加元素:

// 创建 Map
const fruits = new Map();
// 设置 Map 的值
fruits.set("apples", 500);
fruits.set("bananas", 300);
fruits.set("oranges", 200);

亲自试一试

例子 3

您可以使用 get() 方法从 Map 中获取元素:

// 获取 "apples" 的值
let value = fruits.get("apples");
JavaScript Objects vs Maps

亲自试一试

JavaScript 对象与 Map 的区别

JavaScript 对象与 Map 之间的区别:

对象 Map
不能直接迭代 可以直接迭代
没有 size 属性 有 size 属性
键必须是字符串(或符号) 键可以是任何数据类型
键的顺序不明确 键按插入顺序排序
有默认键 没有默认键