为了账号安全,请及时绑定邮箱和手机立即绑定

定时器问题,求大神解答,谢谢!!!

cleartimeout(timer)

timer=null

清除了 为什么还要把timer=null呢?

正在回答

2 回答

因为timer接收到的是setTimeout返回的一个整数类型的值,clearTimeout()是根据这个值去清除计时器,计时器清除后timer变量的值依旧不变,所以最好重新赋值为NULL;setInterval也是同样道理

1 回复 有任何疑惑可以回复我~
#1

慕妹0692581 提问者

整数类型的值是那索引值?
2017-04-04 回复 有任何疑惑可以回复我~
#2

种子_fe

那不重新赋值为null会有什么影响啊?
2017-04-04 回复 有任何疑惑可以回复我~
#3

薛定谔的量子猫 回复 种子_fe

不重新赋值为null的话,当你需要做判断的话可能会影响判断结果
2017-04-04 回复 有任何疑惑可以回复我~
#4

薛定谔的量子猫 回复 种子_fe

不重新赋值为null的话,当你需要做判断的话可能会影响判断结果
2017-04-04 回复 有任何疑惑可以回复我~
#5

种子_fe 回复 薛定谔的量子猫

明白你的意思了,谢谢你!
2017-04-04 回复 有任何疑惑可以回复我~
#6

薛定谔的量子猫 回复 种子_fe

不客气
2017-04-04 回复 有任何疑惑可以回复我~
查看3条回复

具体你们可以在控制台试一下这段代码,观察一下timer的变化。

var timer=null;
console.log('初始timer: '+timer);
setInterval(function(){
	timer=setTimeout(function(){
        console.log('当前 timer: '+timer);
        clearInterval(timer);
        console.log('清除之后 timer: '+timer);
    },1000);
},2000);


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

定时器问题,求大神解答,谢谢!!!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信