在了解事件循环之前,先来了解一下这几个概念:执行栈(call stack),异步函数,浏览器宿主环境,事件队列 执行栈:一种数据结构,用于存放各种函数的执行环境,每个函数在执行之前,它的相关信息都会加入到执行栈.函数在调用之前,先创建执行上下文,然后加入到执行环境中;在函数调用后,就将执行环境销毁 异步函数:在JS中某些函数是不会立即执行的,它需要等到某个时机到达后再执行,这样的函数称为异步函数。比如:事件处理函数; 异步函数的执行时机,会被宿主环境控制 浏览器宿主环境: JS引擎:负责执行执行栈顶部的最顶部代码 GUI线程:负责渲染页面 事件监听线程:负责监听各种事件 计时线程...