如何在JS中创建定时器是最佳方式?
到目前为止,我一直在使用以下方法:
var sec = 0;
setInterval(function (){sec +=1}, 1000);
我注意到,当我需要毫秒级的响应时,速度会变得非常慢。在浏览器标签切换时,它完全停止了。
var milisec = 0;
setInterval(function (){milisec +=1}, 1);
我正在寻找更好的处理方法,这种方法在浏览器窗口改变时仍然有效。
如何在JS中创建定时器是最佳方式?
到目前为止,我一直在使用以下方法:
var sec = 0;
setInterval(function (){sec +=1}, 1000);
我注意到,当我需要毫秒级的响应时,速度会变得非常慢。在浏览器标签切换时,它完全停止了。
var milisec = 0;
setInterval(function (){milisec +=1}, 1);
var start = new Date();
var milliseconds = 0;
var seconds = 0;
setInterval(function()
{
var now = new Date();
milliseconds = now.getTime() - start.getTime();
seconds = round(milliseconds / 1000);
}, 1000);
var start = new Date();
var msPassed = function() {
var now = new Date();
var ms = now.getTime() - start.getTime();
return ms
}
msPassed(); //returns time passed in ms
setInterval
分辨率。不同的浏览器还存在其他限制。 - Sani Huttunen