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

8-4取消计时器问题

var i=setInterval("clock()",100);
为什么要用i来定义

为什么不可以直接这样:

在onclick="clearInterval(clock)"

8-3那边都可以直接用啊

正在回答

2 回答

var i=setInterval("clock()",100);

setInterval("clock()",100)执行时,除了会执行代码,setInterval还会返回自己的身份标识,也就是句柄。

声明一个变量i,用来存放setInterval("clock()",100)的身份标识。

clearInterval(i),是取消i存放的那个身份标识所指向的定时器。

clearInterval是取消定时器的,不是取消函数的。也就是clearInterval(clock)是取消函数。我就算你真的能取消了函数,但定时器还在,就会一直执行函数。所以必须clearInterval(i)取消定时器

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

星星3394050 提问者

非常感谢!
2016-08-07 回复 有任何疑惑可以回复我~

一开始理解不了你说的, 慢慢后来自己学的多一点才明白你说的是对的.多谢.

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

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468043    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

8-4取消计时器问题

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