@@iterator 的初始值是和 values 属性的初始值相同的对象。

语法

arr[Symbol.iterator]()

返回值

数组的 迭代器 函数,通常是 values()函数。

示例

使用for...of 循环的迭代

var arr = new Uint8Array([10, 20, 30, 40, 50]);
// 你的浏览器必须支持 for..of 循环
// 以及 for 循环中的 let 区域变量
for (let n of arr) {
  console.log(n);
}

备选迭代

var arr = new Uint8Array([10, 20, 30, 40, 50]);
var eArr = arr[Symbol.iterator]();
console.log(eArr.next().value); // 10
console.log(eArr.next().value); // 20
console.log(eArr.next().value); // 30
console.log(eArr.next().value); // 40
console.log(eArr.next().value); // 50

规范

Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
%TypedArray%.prototype[@@iterator]()
Standard 初始定义。
ECMAScript Latest Draft (ECMA-262)
%TypedArray%.prototype[@@iterator]()
Draft  

浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) 36 (36) [1] 未实现 未实现 未实现
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support 未实现 (Yes) 36.0 (36) [1] 未实现 未实现 未实现

[1] 从 Gecko 17 (Firefox 17 / Thunderbird 17 / SeaMonkey 2.14) 到 Gecko 26 (Firefox 26 / Thunderbird 26 / SeaMonkey 2.23 / Firefox OS 1.2) 使用 iterator 属性 (bug 907077),从 Gecko 27 到 Gecko 35 使用"@@iterator" 占位符。 在 Gecko 36 (Firefox 36 / Thunderbird 36 / SeaMonkey 2.33)中,@@iterator Symbol 予以实现(bug 918828)。

See also

文档标签和贡献者

此页面的贡献者: wizardforcel
最后编辑者: wizardforcel,