この翻訳は不完全です。英語から この記事を翻訳 してください。

非標準。 Iterator 関数は SpiderMonkey固有の機能で、ある時点で削除されます。将来向きの用途に対して、for..ofループとiterator protocolを使用することを検討してください。

概要

レガシーイテレータプロトコルを実装し、オブジェクトの列挙可能なプロパティに対して反復するオブジェクトを返します。

構文

Iterator(object, [keyOnly])

引数

object
プロパティを反復処理するオブジェクト。
keyOnly
keyOnly が truthy な値である場合は、Iterator.prototype.nextproperty_name のみ返します。

説明

使用方法の概要がIterators and Generatorsページで提供されています。

メソッド

Iterator.prototype.next
[property_name, property_value]フォーマットで次のアイテムを返します。それ以上のアイテムが存在しない場合、StopIterationをスローします。

オブジェクトのプロパティを反復処理する

var a = {
  x: 10,
  y: 20,
};
var iter = Iterator(a);
console.log(iter.next()); // ["x", 10]
console.log(iter.next()); // ["y", 20]
console.log(iter.next()); // throws StopIteration

レガシーデストラクタfor-in文を使用してオブジェクトのプロパティを反復処理する

var a = {
  x: 10,
  y: 20,
};

for (var [name, value] in Iterator(a)) {
  console.log(name, value);   // x 10
                              // y 20
}

仕様

非標準。すべての現在の仕様書でサポートされていません。

ブラウザ実装状況

サポートされていません。バージョン 57 より前の Firefox でサポートしていました。

関連情報

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

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