一、JS单线程、异步、同步概念 从上一篇说明vue nextTick的文章中,多次出现“事件循环”这个名词,简单说明了事件循环的步骤,以便理解nextTick的运行时机,这篇文章将更 ...
一、JS单线程、异步、同步概念 从上一篇说明vue nextTick的文章中,多次出现“事件循环”这个名词,简单说明了事件循环的步骤,以便理解nextTick的运行时机,这篇文章将更 ...
目录 微任务 事件循环机制 setImmediate、setTimeout/setInterval 和 process.nextTick 执行时机对比 实例分析 后记 参考 ...
本文通过结合官方文档、源码和其他文章整理后,对Vue的nextTick做深入解析。理解本文最好有浏览器事件循环的基础,建议先阅读上文《事件循环Event loop到底是什么》。 一、官 ...
产生原因 为什么会有消息队列和事件循环呢?首先最关键的一点在于JS是个单线程,并且主线程非常繁忙,既要处理 DOM,又要计算样式,还要处理布局,同时还需要处理 JavaScript ...
nodejs的特点 nodejs 具有事件驱动和非阻塞I/O的特点。 事件驱动是指nodejs把每一个任务当成事件来处理。 非阻塞I/O是指nodejs遇到I/O任务时,会从线程池调度单独的线程 ...
前言 本文从JS是单线程开始,到JS为了提高效率,使用异步,到JS如何实现异步(做法是主线程外另开工作线程和任务队列,他们之间是如何工作的——事件循环),再到浏览器是如何配合JS执行异步(其他浏览器 ...
1、简介 JS有一个基于“事件循环”的并发模型。这个模型和其他语言(如C和Java)的模型不太一样。 下图描述的是一个理论模型,现代JS引擎在此基础上实现和进行了很多优化: ...
之前已经有两篇随笔提到了event loop,一篇是事件机制,一篇是tasks和microtasks,但是里面的event loop都是文字描述,很难说细,逻辑也只是简单的提了一遍。其实之前也是通过阮 ...
一. 单线程 我们常说“JavaScript是单线程的”。 所谓单线程,是指在JS引擎中负责解释和执行JavaScript代码的线程只有一个。不妨叫它主线程。 但是实际上还存在其他的线程。例如: ...
平时的工作中,也许你会经常用到setTimeout这个方法,可是你真的了解setTimeout吗?本文想通过总结setTimeout的用法,顺便来探索javascript里面的事件执行机制。 s ...