function* 式
function*
キーワードは、式の中でジェネレーター関数を定義するために使用することができます。
構文
function* [name]([param1[, param2[, ..., paramN]]]) { statements }
引数
name
省略可- 関数名。省略可。省略した場合、関数は無名関数として認識されます。名前は関数本体のみにローカルです。
paramN
省略可- 関数に渡される引数の名前。関数は最大 255 の引数を持ち得ます。
statements
- 関数の本体を構成するステートメント。
解説
function*
式は function* 文ととてもよく似ており、構文もほとんど同じです。function*
式と function*
文の主な違いは、function*
式で無名ジェネレーター関数を生成するには関数名が省略できる点です。詳細は functions
をご覧ください。
例
function* を使用する
次の例では、無名ジェネレーター関数を定義し、x
に割り当てます。関数は引数の二乗をもたらします:
let x = function*(y) {
yield y * y;
};
仕様
ブラウザーの互換性
No compatibility data found for javascript.operators.function_star
.
Check for problems with this page or contribute missing data to mdn/browser-compat-data.
関連情報
function*
文GeneratorFunction
オブジェクト- Iterator プロトコル
yield
yield*
Function
オブジェクトfunction
文function
式- 関数と関数スコープ