array.@@iterator
array.@@iterator
@@iterator
属性的初始值与values()属性的初始值是相同的函数对象。
语法
arr[Symbol.iterator]()
返回值
数组迭代器
函数是values()
默认的函数。
示例
使用for...of循环迭代
var arr = ['w', 'y', 'k', 'o', 'p'];
var eArr = arr[Symbol.iterator](
// your browser must support for..of loop
// and let-scoped variables in for loops
for (let letter of eArr) {
console.log(letter
}
Alternative iteration
var arr = ['w', 'y', 'k', 'o', 'p'];
var eArr = arr[Symbol.iterator](
console.log(eArr.next().value // w
console.log(eArr.next().value // y
console.log(eArr.next().value // k
console.log(eArr.next().value // o
console.log(eArr.next().value // p
规范
规范 | 状态 | 评论 |
---|---|---|
ECMAScript 2015(第6版,ECMA-262)该规范中“Array.prototype @@ iterator”的定义。 | 标准 | 初始定义 |
ECMAScript 最新草案(ECMA-262)该规范中“Array.prototype @@ iterator”的定义。 | 使用标准 | |
浏览器兼容性
特征 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基本支持 | 38 | ? | 361 27 — 36 (as @@iterator)2 17 — 27 (as iterator) | 不支持 | 25 | 支持 |
特征 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基本支持 | (是) | (是) | ? | 36 | 没有 | (是) | (是) |