8-4取消计时器问题

来源:8-4 取消计时器clearInterval()

星星3394050

2016-06-26 12:41

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

为什么不可以直接这样:

在onclick="clearInterval(clock)"

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

写回答 关注

2回答

  • 安之以祖古
    2016-06-26 13:29:51
    已采纳

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

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

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

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

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

    星星3394...

    非常感谢!

    2016-08-07 16:55:59

    共 1 条回复 >

  • 星星3394050
    2016-08-07 20:17:38

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

JavaScript进阶篇

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

468060 学习 · 21891 问题

查看课程

相似问题