JavaScript的事件循环机制(Event Loop)是其异步编程模型的核心,它允许JavaScript在单线程环境下处理异步操作,如定时器、网络请求、用户交互等,同时还能保持代码的非阻塞执行。这一机制让JavaScript能够有效地处理并发,特别是在浏览器环境和Node.js环境中。
js是单线程,即v8在执行js的过程中,只有一个线程会工作,可以节约性能和上下文切换的时间。
事件循环机制
1.执行同步代码,(这属于是宏任务)
2.同步执行完毕后,检查是否有异步需要执行(检查两个队列微任务队列和宏任务队列,有就先放进队列去)
3.执行所有的微任务,
4.微任务执行完毕后,如果有需要就会渲染页面(html页面的加载)
5.执行异步宏任务,也是开启下一次事件循环 既是第一次事件循环的结尾,也是第二次事件循环的开头