我看阮一峰老师的关于JavaScript运行机制的博客时(http://www.ruanyifeng.com/blo...),看到这样一句话:一旦"执行栈"中的所有同步任务执行完毕,系统就会读取"任务队列",看看里面有哪些事件。那些对应的异步任务,于是结束等待状态,进入执行栈,开始执行。
这样说的话,只有在同步任务全部完成的情况下,才会读取任务队列,那么,如果同步任务中有语句触发了任务队列中的异步任务,会在该语句执行时,读取任务队列,还是该语句等到其他同步任务完成后,才会执行?
我看阮一峰老师的关于JavaScript运行机制的博客时(http://www.ruanyifeng.com/blo...),看到这样一句话:一旦"执行栈"中的所有同步任务执行完毕,系统就会读取"任务队列",看看里面有哪些事件。那些对应的异步任务,于是结束等待状态,进入执行栈,开始执行。
这样说的话,只有在同步任务全部完成的情况下,才会读取任务队列,那么,如果同步任务中有语句触发了任务队列中的异步任务,会在该语句执行时,读取任务队列,还是该语句等到其他同步任务完成后,才会执行?
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答876 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
举个比较常见的栗子,以下代码:
结果:
异步就是最后执行的那个。