问答详情
源自:8-5 计时器setTimeout()

为什么要写两遍setTimeout("startCount()",1000);?

设置一个不就行了么?有点理解不了,麻烦给稍微讲一下,谢谢、

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>计时器</title>
</head>
<script type="text/javascript">
  var num=0;
  function startCount() {
    document.getElementById('count').value=num;
    num=num+1;
    setTimeout("startCount()",500);
  }
  setTimeout("startCount()",3000);
</script>
</head>
<body>
<form>
<input type="text" id="count" />
</form>
</body>
</html>

提问者:Hey小师弟 2016-04-29 15:22

个回答

  • 万卷古今消永日
    2016-05-13 11:33:29

    意义不同,别误导人家

  • 紫舞夜月
    2016-05-02 16:39:55

    写在函数体内的 setTimeout,当函数第一次被调用后,开始进行递归【即自己调用自己】实现数据的累加效果;

    写在函数体外的 setTimeout 是为了开启函数,相当于一个button,不调用函数,又如何如何让函数运行

  • 幸田实果子
    2016-05-02 01:03:51

    不对不对,一个就够了

  • akiaki
    2016-04-30 23:07:56

    因为要开始调用函数 才会开始计数

  • kuban
    2016-04-29 15:34:18

    第一个setTimeout("startCount()",500);达到每0.5秒数字加1并显示,在函数内。

    因为只是定义了函数,没有调用,是不会开始跑函数的,所以第二个 setTimeout("startCount()",3000);是用来调用函数的,打开页面,3秒回开始计数。

  • 仁太
    2016-04-29 15:25:44

    不能写两遍啊 你从哪里看的代码 不对啊