»コレクション内の各アイテムに対する処理は非常に一般的な操作です。いたるまで、コレクションに対する反復処理の複数の方法を提供します。ループの動作を簡単にカスタマイズできる仕組みをもたらします。yield*イテレーターJavaScriptでは、イテレーターはシーケンスおよび潜在的には終了時の戻り値を定義するオブジェクトです。メソッドを持つことによってイテレータプロトコルを実装するオブジェクトです。プロパティが存在する場合は、それがイテレータの戻り値となります。繰り返し呼び出すことによって、明示的に反復することができます。イテレーターを反復することを、イテレーターを消費すると言います。一般的に1回しか実行できないためです。一般的なイテレータは配列イテレータで、配列の各値を順番に返します。すべてのイテレータを配列として表現できるとは想像するのは容易ですが、これは真実ではありません。整数の範囲など、無限のサイズのシーケンスを表現できます。ここでは、それを行うことができる例を示します。一連の整数を定義する単純な範囲のイテレーターの作成を可能にします。最終的な戻り値は、作成したシーケンスのサイズです。5特定のオブジェクトがイテレーターであるかどうかは考えても知ることはできません。ジェネレーター関数カスタムイテレーターは便利なツールですが、その作成には内部状態を明示的に維持する必要があるため、慎重なプログラミングが必要です。ジェネレーター関数は強力な代替手段を提供します。実行が連続していない単一の関数を記述することによって反復アルゴリズムを定義できます。構文を使用して記述されます。最初に呼び出されると、ジェネレーター関数はコードを実行せず、ジェネレーターと呼ばれるある種のイテレーターを返します。キーワードを検出するまで実行します。回のみ反復することができます。上の例に適用してみましょう。このコードの動作は同じですが、実装は書くのも読むのもはるかに容易になります。構文でループされる値など反復動作を定義する場合、反復可能オブジェクトです。メソッドを実装する必要があります。キーを持つプロパティが必要です。回以上でも反復することができます。どちらが当てはまるかは、プログラマに任されています。各呼び出しで新しいイテレーターを返す必要があります。すべてビルトイン反復可能オブジェクトです。メソッドを備えているためです。文や式は、反復可能オブジェクトを必要とします。文により生成される値を計算しており、多くの計算が必要な一連のデータを効率的に表現したり、前出のとおり無限のシーケンスを表現したりすることを可能にします。メソッドで受け入れることもできます。呼び出しに値を渡しても常に無視されることに注意してください。メソッドを呼び出して発生すべき例外値を渡すことで、ジェネレーターに例外を強制的に発生させることができます。文に替わったかのように、ジェネレーターが停止した際の状況に応じて例外が発生します。メソッドを持っています。inbox.現在、ニュースレターは英語でのみ提供されています。従って私の個人情報を扱うことに同意します。