1
为什么发电机不等待异步承诺完成前转移到下一个收益?发电机没有评估承诺
function *verify() {
try {
let prm = new Promise((resolve,reject) => {
resolve("abc");
})
let k = yield prm
console.log(k)
yield 1;
console.log("1")
yield 2;
console.log("2")
yield 3;
console.log("3")
} catch (err) {
console.log("error")
}
}
var gen = verify()
while (!gen.next().done) {}
回报
undefined
1
2
3
发电机不等待承诺。您正在考虑异步生成器,但尚未支持异步生成器,但您可以使用Babel进行传输。 – elclanrs
因为承诺被认为是异步的,所以prm将被设置然后放弃,但它会解决*随时*,它不会阻塞。 – Booster2ooo