ES6 - 使用箭头语法调用匿名生成器

时间:2015-11-12 20:14:59

标签: javascript generator ecmascript-6 arrow-functions

我怎样才能像这样调用生成器:

const scenarioProvider = (function*() {
    ....
}).bind(this)();

通过箭头函数语法。我的意思是用新的'lexical this'替换'bind(this)'。

2 个答案:

答案 0 :(得分:3)

这目前不可能,并且不太可能包含在ecmascript的未来版本中。

  

只是为了让每个人都知道(会议记录,即将推出,会明确表示),我们同意不做发电机箭头。这里确定的那种麻烦太多了......

来源:Brendan Eich @esdiscuss

答案 1 :(得分:1)

根据定义,箭头函数是词法范围的。你不能use a generator with an arrow function

但请注意,您无法绑定arrorw函数。

MDN州:

  

与函数表达式相比,箭头函数表达式(也称为胖箭头函数)具有更短的语法,并且词汇绑定此值(不绑定它自己的this,arguments,super或new.target)。箭头功能始终是匿名的。