tom0008668
2016-04-13 17:34
为什么
当按钮start被点击时,setTimeout()调用函数,在5秒后弹出一个提示框 只运行一次?
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
function tinfo(){
var t=setTimeout("alert('Hello!')",5000);
}
</script>
</head>
<body>
<form>
<input type="button" value="start" onClick="tinfo()">
</form>
</body>
</html>
而这个代码就创建一个运行于无穷循环中的计数器,而不是只运行一次?
<!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>
下面这个函数,在函数里面调用了自己,相当于运行setTimeout("numCount()",1000);的时候,又将nunCount()重新运行了一次……
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题