Edited at

JavaScript:ジェネレータをアロー関数で書いとったわ

イテレーターとジェネレーター

JavaScript の ジェネレータ を極める!

JSのジェネレーター関数の書き方まとめ

多分普通は

const g = function*(){};

みたいにするんです。きっと。

ぼくもそのつもりで書いていたんですけど、

const g = () => function*(){}();

っていう順番で書いてました。あれ?

他のアロー関数に見た目あわせちゃってました。

これでも動いてるみたいです。

たとえば、配列の要素を返すジェネレータだと:

//文

function* arrayToGen(xs){ yield* xs; };
//式
const arrayToGen = function*(xs){ yield* xs; };
//アロー関数
const arrayToGen = xs => function*(){ yield* xs; }();

メリット


  • 見た目が好き

デメリット


  • 最後の()を忘れがち

何か問題があればコメントよろしくです。