首页 > clearTimeout(timer)和timer=null有没有区别呢

clearTimeout(timer)和timer=null有没有区别呢

timer=setTimeout(function(){
    //dosth
    clearTimeout(timer);
    timer=null;
},2000)

timer=null起不到终止计时器的作用,只是给timer变量赋了值


timer 只是一个正整数,你设置 null 又有什么用呢?


var x = setInterval(function(){
alert()
x = null;
},1000);

这样可以看出来问题。


clearTimeout(timer)清除了timer指向的定时器,timer=null,是修改timer的指向,是timer这个变量不指向某个定时器,然而并没有清除这个定时器,定时器依旧可以使用

【热门文章】
【热门文章】