blob: 5d27dffc8229792566b3694a54d4b859ae97672b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
---
title: Map.prototype.keys()
slug: Web/JavaScript/Reference/Global_Objects/Map/keys
tags:
- ECMAScript6
- Iterator
- JavaScript
- Map
- Method
- Prototype
- 方法
translation_of: Web/JavaScript/Reference/Global_Objects/Map/keys
---
<div>{{JSRef}}</div>
<p><code><strong>keys()</strong></code> 返回一个引用的 <code><strong>Iterator</strong></code> 对象。它包含按照顺序插入 <code>Map</code> 对象中每个元素的key值。</p>
<div>{{EmbedInteractiveExample("pages/js/map-prototype-keys.html")}}</div>
<h2 id="语法">语法</h2>
<pre class="syntaxbox notranslate"><code><em>myMap</em>.keys()</code></pre>
<h3 id="返回值">返回值</h3>
<p>一个存在引用关系的 {{jsxref("Map")}} iterator 对象.</p>
<h2 id="例子">例子</h2>
<h3 id="使用_keys">使用 <code>keys()</code></h3>
<pre class="brush:js notranslate">var myMap = new Map();
myMap.set("0", "foo");
myMap.set(1, "bar");
myMap.set({}, "baz");
var mapIter = myMap.keys();
console.log(mapIter.next().value); // "0"
console.log(mapIter.next().value); // 1
console.log(mapIter.next().value); // Object
</pre>
<h2 id="规范">规范</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">规范</th>
<th scope="col">状态</th>
<th scope="col">备注</th>
</tr>
<tr>
<td>{{SpecName('ES2015', '#sec-map.prototype.keys', 'Map.prototype.keys')}}</td>
<td>{{Spec2('ES2015')}}</td>
<td>Initial definition.</td>
</tr>
<tr>
<td>{{SpecName('ESDraft', '#sec-map.prototype.keys', 'Map.prototype.keys')}}</td>
<td>{{Spec2('ESDraft')}}</td>
<td></td>
</tr>
</tbody>
</table>
<h2 id="浏览器兼容性">浏览器兼容性</h2>
<p>{{Compat("javascript.builtins.Map.keys")}}</p>
<h2 id="参见">参见</h2>
<ul>
<li>{{jsxref("Map.prototype.entries()")}}</li>
<li>{{jsxref("Map.prototype.values()")}}</li>
</ul>
|