跑吧:
function requestAndDraw() {
requestAnimationFrame((t) => {
console.log(`T: ${t} P.now:${performance.now()}`);
});
}
intId = setInterval(requestAndDraw, 20);
setTimeout(() => clearInterval(intId), 1000);
它打印的内容如下:
T: 1164.656 P.now:1176.300000000083
我想知道12ms差异的原因是什么?
执行在requestAnimationFrame
注册的其他一些回调需要一些时间吗?这只是解释js的一些开销吗?或者是什么?在这种情况下,12ms不是我扔掉的东西。