JavaScript Map keys()

定义和用法

keys() 方法返回包含 Map 中所有键的迭代器对象。

keys() 方法不会改变原始 Map。

实例

例子 1

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

// 列出所有键
let text = "";
for (const x of fruits.keys()) {
  text += x;
}

亲自试一试

对象作为键

注意:能够使用对象作为键是 Map 的一个重要特性。

例子 2

// 创建对象
const apples = {name: 'Apples'};
const bananas = {name: 'Bananas'};
const oranges = {name: 'Oranges'};

// 创建一个 Map
const fruits = new Map();

// 向 Map 中添加新元素
fruits.set(apples, 500);
fruits.set(bananas, 300);
fruits.set(oranges, 200);

亲自试一试

记住:键是一个对象(apples),而不是字符串("apples"):

例子 3

fruits.get("apples");  // 返回 undefined

亲自试一试

语法

map.keys()

参数

无。

返回值

类型 描述
Iterator 包含 Map 中所有键的可迭代对象。

浏览器支持

map.keys() 是 ECMAScript6 (ES6) 的特性。

自 2017 年 6 月起,所有现代浏览器均支持 ES6(JavaScript 2015):

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 月

map.keys() 在 Internet Explorer 中不受支持。