blob: 3ca1c2a6f267248620e7a761c71aa822017dd172 (
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
|
---
title: DOMTokenList.keys()
slug: Web/API/DOMTokenList/keys
tags:
- DOM
- DOMTokenList
- Iterable
- Method
- Reference
- Web
- keys
translation_of: Web/API/DOMTokenList/keys
---
<p>{{APIRef("DOM")}}</p>
<p>{{domxref("DOMTokenList")}}<strong> 的 </strong><code><strong>keys()</strong></code> 方法返回一个{{jsxref("Iteration_protocols",'iterator')}}, 可以用来遍历这个对象中的所有的键,键的类型是<code>无符号整型</code>。</p>
<h2 id="语法">语法</h2>
<pre class="syntaxbox">tokenList.keys();</pre>
<h3 id="参数">参数</h3>
<p>无.</p>
<h3 id="返回值">返回值</h3>
<p>返回一个 {{jsxref("Iteration_protocols","iterator")}}.</p>
<h2 id="例子">例子</h2>
<p>在下面的例子中,我们获取了一个使用 {{domxref("Element.classList")}}属性获取了一个 <code>DOMTokenList</code> ,在这里它表示了这个 {{htmlelement("span")}} 元素的所有class属性值的键(索引)。然后我们使用了它的 <code>keys()</code>方法获取了一个iterator, 最后再使用 <a href="/en-US/docs/Web/JavaScript/Reference/Statements/for...of">for ... of</a> 循环来对所有键(这里是索引)进行遍历,将遍历的每一个结果都写到这个 <code><span></code> 标签内( 使用{{domxref("Node.textContent")}}属性)显示。</p>
<p>首先,例子使用的HTML代码为:</p>
<pre class="brush: html"><span class="a b c"></span></pre>
<p>这是JavaScript代码:</p>
<pre class="brush: js">var span = document.querySelector("span");
var classes = span.classList;
var iterator = classes.keys();
for(var value of iterator) {
span.textContent += value + ' ++ ';
}</pre>
<p>输出为:</p>
<p>{{ EmbedLiveSample('Examples', '100%', 60) }}</p>
<h2 id="规范">规范</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">Specification</th>
<th scope="col">Status</th>
<th scope="col">Comment</th>
</tr>
<tr>
<td>{{SpecName('DOM WHATWG','#interface-domtokenlist','keys() (as iterable<Node>)')}}</td>
<td>{{Spec2('DOM WHATWG')}}</td>
<td>Initial definition</td>
</tr>
</tbody>
</table>
<h2 id="浏览器兼容性">浏览器兼容性</h2>
<div>
<p>{{Compat("api.DOMTokenList.keys")}}</p>
</div>
|