【发布时间】:2017-03-06 13:01:54
【问题描述】:
谁能向我解释这段代码是如何工作的? (嵌套收益率):
function* anotherGenerator(i) {
yield i + 1;
yield i + 2;
yield i + 3;
}
function* generator(i){
yield i;
yield* anotherGenerator(i);
yield i + 10;
}
var gen = generator(10);
console.log(gen.next().value); // 10
console.log(gen.next().value); // 11
console.log(gen.next().value); // 12
console.log(gen.next().value); // 13
console.log(gen.next().value); // 20
首先 console.log() 我们得到一个值 10 , 在那之后 11 ..12...13...20... 这个嵌套的 yield 是如何工作的?
【问题讨论】:
-
这是一个来自 MDN 的例子,对吧?该页面链接到the page describing
yield*。