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

num是全局变量,且有自家运算,为什么要写2次setTimeout()???

<!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()", 2000);//num是全局变量,为什么要写2次setTimeout()???
  }
  setTimeout("startCount()", 2000);
</script>
</head>
<body>
<form>
<input type="text" id="count" />
</form>
</body>
</html>

正在回答

1 回答

在函数内的setTimeout("startCount()", 2000)  这一句的意思是让函数触发的时候自己开始调用自己,形成一个自身无限循环的计数功能。

setTimeout只能执行一次。。

setInterval重复执行定时器

在第二个就是意思说在外面调用startCount这个函数,,函数自己不能执行。。必须调用才能执行。。所以在后面也写了个定时器调用。。

也可以不再js中写最后一个setTimeout,但是这样就必须在html中调用函数,才可以得出效果


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

举报

0/150
提交
取消

num是全局变量,且有自家运算,为什么要写2次setTimeout()???

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