Advanced-Frontend / Daily-Interview-Question

我是依扬(木易杨),公众号「高级前端进阶」作者,每天搞定一道前端大厂面试题,祝大家天天进步,一年后会看到不一样的自己。
https://muyiy.cn/question/
27.43k stars 3.29k forks source link

通过协程来实现 #580

Closed ItachLuo closed 2 years ago

ItachLuo commented 2 years ago

async function test(){ console.log(1) await console.log(2) console.log(3) } JS是单线程执行的,当我们执行到这样被async标记的函数,会开启一个协程,协程和JS主线程是一个非此即彼的执行状态; 执行协程上的代码的时候,主线程上的代码暂停执行,执行到await的时候再把执行权交给主线程,等到await后面的代码resolve,协程再重新获取执行权,然后执行async函数内await后续的代码。