1. ホーム
  2. ジャバスクリプト

[解決済み】JavaScriptのyieldキーワードは何ですか?

2022-04-03 06:02:15

質問

JavaScriptに"yield"というキーワードがあると聞いたのですが、それに関するドキュメントが非常に乏しいです。どなたか、その使い方と、何のために使うのかを説明してくれる(または説明してくれるサイトを紹介してくれる)方はいらっしゃいませんか?

どのように解決するのですか?

その MDNドキュメント はかなり良いですね、IMO。

yieldキーワードを含む関数は、ジェネレータです。この関数を呼び出すと、形式パラメータは実際の引数に束縛されますが、その本体は実際には評価されません。その代わり、ジェネレータ・イテレータが返されます。ジェネレータ・イテレータのnext()メソッドを呼び出すたびに、反復アルゴリズムがもう一回実行されます。各ステップの値は yield キーワードで指定された値です。yieldはreturnのジェネレータ・イテレータ版と考え、アルゴリズムの各反復の間の境界を示すものです。next()を呼び出すたびに、ジェネレータコードはyieldに続くステートメントから再開されます。