产生原因 为什么会有消息队列和事件循环呢?首先最关键的一点在于JS是个单线程,并且主线程非常繁忙,既要处理 DOM,又要计算样式,还要处理布局,同时还需要处理 JavaScript 任务以及各种输入事件.要让这么多不同类型的任务在主线程中有条不紊地执行,这就需要一个系统来统筹调度这些任务,这个统筹调度系统就是消息队列和事件循环系统. 消息队列 作用 消息队列是一种数据结构,可以存放要执行的任务.它符合队列“先进先出”的特点,也就是说要添加任务的话,添加到队列的尾部:要取出任务的话,从队列头部去取…