From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../reference/global_objects/iterator/index.html | 95 ++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 files/ja/web/javascript/reference/global_objects/iterator/index.html (limited to 'files/ja/web/javascript/reference/global_objects/iterator') diff --git a/files/ja/web/javascript/reference/global_objects/iterator/index.html b/files/ja/web/javascript/reference/global_objects/iterator/index.html new file mode 100644 index 0000000000..3a641ff7d9 --- /dev/null +++ b/files/ja/web/javascript/reference/global_objects/iterator/index.html @@ -0,0 +1,95 @@ +--- +title: Iterator +slug: Web/JavaScript/Reference/Global_Objects/Iterator +tags: + - Deprecated + - JavaScript + - Legacy Iterator + - Reference +translation_of: Archive/Web/Iterator +--- +
{{jsSidebar("Objects")}}
+ +
非標準。 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
+}
+
+ +

for-ofとともにイテレータを使用する

+ +
var a = {
+  x: 10,
+  y: 20,
+};
+
+for (var [name, value] of Iterator(a)) {  // @@iterator is used
+  console.log(name, value);   // x 10
+                              // y 20
+}
+ +

仕様

+ +

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

+ +

ブラウザ実装状況

+ +

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

+ +

関連情報

+ + -- cgit v1.2.3-54-g00ecf