乐趣区

关于javascript:个人记录JS的事件循环机制

js 是单线程非阻塞的

单线程
因为 js 的主要用途是进行用户交互操做和 dom 的解决,如果多线程不利于 dom 解决,会导致 dom 不晓得解决哪个线程的工作
非梗塞
应用了 event loop 事件循环机制
执行栈与事件队列
执行栈进行工作的解决都是单线程按程序进行的同步解决,如果遇到异步就会先挂起,等执行栈中的工作都执行实现,主线程处于闲暇状态就会来事件队列中进行查看是否有工作,如果有就把第一个放入执行栈中,并执行其中的同步代码
宏工作和微工作
每次执行栈执行的代码就是一个宏工作(包含每次从事件队列中获取一个事件回调并放到执行栈中执行)

退出移动版