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

setTimeout仅执行一次,为什么可以无穷循环?

<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
var num=0;
function numCount(){
 document.getElementById('txt').value=num;
 num=num+1;
 setTimeout("numCount()",1000);
 }
</script>
</head>
<body>
<form>
<input type="text" id="txt" />
<input type="button" value="Start" onClick="numCount()" />
</form>
</body>
</html>


提问者:紫琮 2018-08-13 16:33

个回答

  • 跟我一起读_biang
    2018-08-20 13:19:12

    第一次进入函数,执行完setTimeout("numCount()",1000);开始计时,函数继续往下执行,函数结束。计时达到1000ms后,立即再次执行numCount();  这就是setTimeout()的作用,将函数或代码延时执行。

  • mukewzh
    2018-08-13 17:16:05

    递归啊  你在函数里调用了函数又没设置停止条件。。。