在代码执行中
首先我们在执行栈里面执行代码,自上而下执行(先变量提升).当遇见异步代码时候,把异步代码放进事件队列中.
事件队列如下图,分成微任务与宏任务.当我们代码执行过程中,遇见异步代码,是宏任务的就放进事件队列的宏任务里,以此类推.
当代码中同步代码执行完成,这时,我们去事件队列中寻找有没有微任务,如果有微任务,我们按照顺序把微任务依次拿到执行栈内执行(一次只能拿一个任务去执行栈执行),当事件队列中没有微任务了.我们在去找宏任务.
这个寻找的过程叫事件循环.
在代码执行中
首先我们在执行栈里面执行代码,自上而下执行(先变量提升).当遇见异步代码时候,把异步代码放进事件队列中.
事件队列如下图,分成微任务与宏任务.当我们代码执行过程中,遇见异步代码,是宏任务的就放进事件队列的宏任务里,以此类推.
当代码中同步代码执行完成,这时,我们去事件队列中寻找有没有微任务,如果有微任务,我们按照顺序把微任务依次拿到执行栈内执行(一次只能拿一个任务去执行栈执行),当事件队列中没有微任务了.我们在去找宏任务.
这个寻找的过程叫事件循环.