Timer 为什么每次都会增加?
我想了解为什么每当使用Timer 为什么每次都会增加?,timer,settimeout,Timer,Settimeout,我想了解为什么每当使用计时器时,计时器的数量不断增加 每次都应该从一个新的数字开始吗 为什么每次增加2或4个,而不是1个 $(document).ready(function(){ endAndStartTimer(); }); var timer; function endAndStartTimer() { window.clearTimeout(timer); //var millisecBeforeRedirect = 10000; timer = window.s
计时器时,计时器的数量不断增加
每次都应该从一个新的数字开始吗
为什么每次增加2或4个,而不是1个
$(document).ready(function(){
endAndStartTimer();
});
var timer;
function endAndStartTimer() {
window.clearTimeout(timer);
//var millisecBeforeRedirect = 10000;
timer = window.setTimeout(function(){alert('Hello!');},1000);
alert(timer);
}
我是否需要窗口。清除超时(计时器);函数内部?如果我被解雇了会有什么问题
你可以试试
谢谢。一些简单的事实
您不必在设置前调用clearTimeout
。至少在您提供的代码中没有
当我在FF4中运行JSFIDLE时,它总是报告2
计时器ID是由浏览器中实现的Javascript引擎生成的,因此您无法对其进行太多控制。无论它返回什么,都是您必须用来清除它的值。我还没有测试过它,但这些ID生成器可能是以不同的方式实现的。尽管最简单(=最快)的方法是简单地增加最后一个计时器ID的ID
该方法返回唯一的计时器ID。唯一的目的是为您提供一个句柄,以便将其与clearTimeout一起使用。您无法控制生成的id。这些数字是计时器id。每次调用setTimeout
,都会创建一个新计时器并返回一个新ID。