我一直认为requestAnimationFrame使用的时间戳与JavaScript中的通常时间戳相同,即自1970年1月1日以来的毫秒数.今天我已经捕获了时间戳来验证并发现RAF时间戳可能是从开始以来测量的.页面加载.测量的时间戳究竟是什么?
测试代码:
var i = 0; var start = null; var times = []; var dur = 5000; function step(timestamp) { if (start===null) start = timestamp; times[i++] = timestamp; if (timestamp-start<=dur) { requestAnimationFrame(step); } else { document.getElementById('output').innerHTML = times.join('
'); } } requestAnimationFrame(step);
给出这样的结果:
158.52126457412882 183.12243595205535 199.52116819316421 ...
在所有支持RAF的浏览器中.