我尝试了生成器的一小段代码
function* listener() {
console.log('listening');
while (true) {
console.log('before yield'); /** Why this is getting print in end again**/
let msg = yield;
console.log('after yield', msg);
}
}
let l = listener();
l.next('are you there?');
console.log('-----');
l.next('how are you?');
输出:
listening
before yield
-----
after yield how are you?
before yield
一切看起来都不错,但唯一我不确定控制如何最终再次返回到“在屈服之前”打印。
有人可以帮助我理解这个概念吗?
谢谢