We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

@@iterator プロパティの初期値は、values() プロパティの初期値と同じ関数オブジェクトです。

構文

arr[Symbol.iterator]()

for...of ループを用いた反復

var arr = ['f', 'o', 'x', 'k', 'e', 'h'];
// your browser must support for..of loop
// and let-scoped variables in for loops
for (let letter of arr) {
  console.log(letter);
}

もう一つの反復

var arr = ['f', 'o', 'x', 'k', 'e', 'h'];
var eArr = arr[Symbol.iterator]();
console.log(eArr.next().value); // f
console.log(eArr.next().value); // o
console.log(eArr.next().value); // x
console.log(eArr.next().value); // k
console.log(eArr.next().value); // e
console.log(eArr.next().value); // h

仕様

仕様 状況 コメント
ECMAScript 2015 (6th Edition, ECMA-262)
Array.prototype[@@iterator]() の定義
標準 Initial definition.
ECMAScript Latest Draft (ECMA-262)
Array.prototype[@@iterator]() の定義
ドラフト

ブラウザ実装状況

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!

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本サポート 38 36.0 (36) [1] 未サポート 25 未サポート
機能 Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
基本サポート 未サポート 未サポート 36.0 (36) [1] 未サポート 25 未サポート

[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 シンボル が実装されました (bug 918828)。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: Marsf, shide55
最終更新者: Marsf,