JavaScript Map 參考手冊

Map 是一種存儲鍵值對的數據結構,其中鍵可以是任何數據類型。

Map 會記住鍵的原始插入順序。

Map 方法和屬性

方法/屬性 描述
new Map() 創建新的 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 屬性
鍵必須是字符串(或符號) 鍵可以是任何數據類型
鍵的順序不明確 鍵按插入順序排序
有默認鍵 沒有默認鍵