60FPS, 即每秒渲染60帧, 每一帧的间隔时间为 1000ms / 60 = 16.666ms
在一次渲染过程中, 要经历一下过程:
?..., JavaScript 代码执行了 264.18ms, 在执行过程中动画一直卡顿中, 并且卡顿结束会跳帧, 而不是基于卡顿前的位置继续绘制动画
?...JS 动画
在高帧率情况下, setInterval 和 requestAnimationFrame 并没有明显的区别, 我们来增加单帧内的计算量, 首先看 setInterval
function..., 在阻塞期间, 动画卡顿, 用户操作事件无法响应, 我们要避免长时间阻塞的行为
如何避免呢?..., 动画就不会卡顿了
react 的 fiber 架构也是基于 requestIdleCallback 实现的, 并且在不支持的浏览器中提供了 polyfill
总结
一个绘制过程分为 JavaScript