EventLoop
1.JavaScript是单线程语言,单线程执行任务队列问题:如果前一个任务非常耗时,则后续的任务就要一直等待,导致程序出现假死问题。
2.同步任务和异步任务
为了防止某个耗时任务导致程序假死的问题
(1)同步任务(synchronous)
非耗时任务,指的是主线程上排队执行的那些任务,只有前一个任务执行完毕,才能执行后一个任务
(2)异步任务(asynchronous)
耗时任务,异步任务由JavaScript委托给宿主环境(js执行环境,对JavaScript来说,主要的执行环境就是:浏览器和node.js环境)进行执行,当异步任务执行完成后,会通知JavaScript主线程执行异步任务的回调函数
3.同步任务和异步任务的执行过程

4.EventLoop的基本概念
JavaScript主线程从“任务队列”中读取异步任务的回调函数,放到执行栈中依次执行。这个过程循环不断,整个这种运行机制称为EventLoop(事件循环)
5.结合EventLoop分析输出的顺序

浙公网安备 33010602011771号