EcmaScript产量的优先级6

我有一个函数build ,同步返回一个对象,这又包含一个函数run 。 这个函数返回一个thunk,因此可以使用yield和一个库(如co来调用。

基本上这个电话是这样的:

 yield build().run(); 

现在,问题是,我想确保yield是指run ,而不是build 。 我如何做到这一点,而不需要像下面的代码片段那样引入一个临时variables?

 var temp = build(); yield temp.run(); 

有任何想法吗?

PS:我在Node.js 0.11.x上使用' – harmony'标志运行这段代码。

与成员运营商和呼叫运营商相比,几乎没有更高的优先级,所以你是安全的。 以下是您的MDN操作员优先权的参考。 yield在那里非常低。

如果你想把yieldbuild()调用,你需要一个明确的分组。

 (yield build()).run()