开发者社区> 问答> 正文

setTimeout、Promise、Async/Await 的区别

setTimeout、Promise、Async/Await 的区别

展开
收起
Bill 2020-05-23 13:50:05 2233 0
1 条回答
写回答
取消 提交回答
  • 领取2折优惠劵,有几率免单哦!http://www.weilai.info/tool/326.html

    这题主要是考察这三者在事件循环中的区别,事件循环中分为宏任务队列和微任务队列。

    其中settimeout的回调函数放到宏任务队列里,等到执行栈清空以后执行;

    promise.then里的回调函数会放到相应宏任务的微任务队列里,等宏任务里面的同步代码执行完再执行;

    async函数表示函数里面可能会有异步方法,await后面跟一个表达式,async方法执行时,遇到await会立即执行表达式,然后把表达式后面的代码放到微任务队列里,让出执行栈让同步代码先执行。

    2020-05-24 22:19:53
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载