--- title: 'Array.prototype[@@iterator]()' slug: Web/JavaScript/Reference/Global_Objects/Array/@@iterator tags: - Array - ECMAScript 2015 - Iterator - JavaScript - Method - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Array/@@iterator ---
@@iterator
屬性的初始值與 {{jsxref("Array.prototype.values()", "values()")}} 屬性的初始值為相同的的函式物件。
arr[Symbol.iterator]()
陣列的迭代器(iterator)函式,預設與 {{jsxref("Array.prototype.values()", "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); }
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
Specification | Status | Comment |
---|---|---|
{{SpecName('ES2015', '#sec-array.prototype-@@iterator', 'Array.prototype[@@iterator]()')}} | {{Spec2('ES2015')}} | Initial definition. |
{{SpecName('ESDraft', '#sec-array.prototype-@@iterator', 'Array.prototype[@@iterator]()')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.builtins.Array.@@iterator")}}