在上篇文章《现代前端科技解析 —— 数据响应式系统 (Data Reactivity System)》中我们用到了 nextTick
函数,该函数使用 MutationObserver
实现了『异步』更新。我们工作中也常用 setTimeout(fn, 0)
来实现任务的『延迟』执行。本文以次为引,结合浏览器渲染,全面解析一轮 eventloop(事件循环)
各步骤的执行时序问题。
去年在《谈谈网页中的 Animation 》中曾经提到了 requestAnimationFrame 这个 API,非常适合用来做流畅的动画效果。其实除了做动画的优化,requestAnimationFrame 也可以做其他方面的性能优化。
Continue reading