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

为什么最后调用一次这个递归循环时还要循环?

如本题我做出代码,但不明白 在定义函数时已经在它内部把它写成了一个每隔1000毫秒就调用一次自己的一个无限循环的函数。我需要让这个函数开始执行的话 直接调用:numCount();   代表开始执行这个函数 不久可以了吗?  为什么要写成setTimeout("numCount()",1000);
 这样不就是说 每隔1000毫秒,开始进行一个无限循环,那10秒的话就是开始10个无限循环?

明白啦已经~

<script type="text/javascript">
  var num=0;
  function numCount() {
    document.getElementById('count').value=num;
    num=num+1;
    setTimeout("numCount()",1000); 
  }
 setTimeout("numCount()",1000); 
</script>


正在回答

2 回答

我是这么理解的   首先从第一行开始执行  然后执行到第8行,  开始进入无限循环,然后就没然后了,题主说的10秒我认为是进入无限循环的10秒

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

num是定义在函数外部的,每执行一次numCount(),num都+1;显示出来的应该是1,2,3,4....吧

setTimeout()写在里面外面应该都是可以的吧。

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

举报

0/150
提交
取消

为什么最后调用一次这个递归循环时还要循环?

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