事件循环
异步:某些函数不会立即执行,需要等到某个时机成熟后才会执行,该函数叫做异步函数。
浏览器的线程:
- JS执行引擎:负责执行JS代码
- 渲染线程:负责渲染页面
- 计时器线程:负责计时
- 事件监听线程:负责监听事件
- http网络线程:负责网络通信
事件队列:一块内存空间,用于存放执行时机到达的异步函数。当JS引擎空闲(执行栈没有可执行的上下文),它会从事件队列中拿出第一个函数执行。
事件循环:event loop,是指函数在执行栈、宿主线程、事件队列中的循环移动。
事件循环示意图: 
异步:某些函数不会立即执行,需要等到某个时机成熟后才会执行,该函数叫做异步函数。
浏览器的线程:
事件队列:一块内存空间,用于存放执行时机到达的异步函数。当JS引擎空闲(执行栈没有可执行的上下文),它会从事件队列中拿出第一个函数执行。
事件循环:event loop,是指函数在执行栈、宿主线程、事件队列中的循环移动。
事件循环示意图: 