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

flag = false 是什么时候被重置为true的?

照着视频的代码实践了一次,发现没有把flag重置为true的代码,但是最后确确实实是清除了定时器,那么,flag是什么时候被重置的呢?

另外,看到有人回答,flag应该被声明在定时器里面,这个是不对的。如果声明在定时器里面,那么就会出现视频中声明flag之前的bug。

求大神解答一下。


上面的问题好像有点不清晰哈,下面说清楚一点。

flag=true是放在定时器外面的,对吧?定时器里面是没有代码把flag重置为true的,当第一次代码执行到

if(icur!=json[attr]){
    flag=false;
}


这里的时候,flag就被赋值为false了,之后都没有给flag赋值为true。

那么最后是怎么判断到flag=true的呢?


在这里就很不明白,因为没有把flag重置为true的话,其实是没办法执行

if(flag){
    clearInterval(obj.timer);
    if(fn){
        fn();
     }
 }

和之后的fn函数的。


正在回答

12 回答

。。。。。好像看错问题,你忽略我的回答吧

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

当最后一个目标完成后,因为setInterval,会重新初始化flag为true

0 回复 有任何疑惑可以回复我~
首页上一页12下一页尾页

举报

0/150
提交
取消

flag = false 是什么时候被重置为true的?

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