【发布时间】:2013-10-05 23:24:58
【问题描述】:
我知道yield*可以用来写generator,像这样
function* foo() {
yield* bar();
yield 1;
}
function* bar() {
yield 2;
}
但是如果我有一些正常的函数yield一个值。
function xx()
{
yield 1;
}
v8 说
yield 1;
^
SyntaxError: Unexpected number`
这是否意味着yield 只保存了generator 的环境,而不是完整的调用堆栈,并且无法停止和恢复像生成器这样的正常功能?
听说在 FireFox(SpiderMonkey) 中,yield 可以用于不兼容 ES6 的正常功能。
【问题讨论】:
标签: javascript generator v8 yield