We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

function*演算子は式の中でジェネレーター関数を定義します。

構文

function* [name]([param1[, param2[, ..., paramN]]]) {
   statements
}

引数

name
関数名。省略可。 省略した場合、関数は無名関数として認識されます。名前は関数本体のみにローカルです。
paramN
関数に渡される引数の名前。関数は最大 255 の引数を持ち得ます。
statements
関数の本体を構成するステートメント。

説明

function*式はfunction* ステートメントとよく似ており、同じ書式でもあります。function*式とfunction*ステートメントの主な違いは、無名ジェネレーター関数を生成するためにfunction*式で省略された関数名です。詳細はfunctionsをご覧ください。

次の例では、無名ジェネレーター関数を定義し、xに割り当てます。関数は引数の二乗をもたらします。:

var x = function*(y) {
   yield y * y;
};

仕様

仕様 ステータス コメント
ECMAScript 2015 (6th Edition, ECMA-262)
function* の定義
標準 初期定義。
ECMAScript Latest Draft (ECMA-262)
function* の定義
ドラフト    

ブラウザ実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応 あり あり26 なし あり10
Trailing comma in parameters58 ?52 ?45 ?
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 あり あり あり26 あり10 あり
Trailing comma in parameters5858 ?5245 ?7.0

関連情報

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

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