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>
2015-04-06
在函數(shù)內(nèi)的setTimeout("startCount()", 2000)? 這一句的意思是讓函數(shù)觸發(fā)的時候自己開始調(diào)用自己,形成一個自身無限循環(huán)的計數(shù)功能。
setTimeout只能執(zhí)行一次。。
setInterval重復(fù)執(zhí)行定時器
在第二個就是意思說在外面調(diào)用startCount這個函數(shù),,函數(shù)自己不能執(zhí)行。。必須調(diào)用才能執(zhí)行。。所以在后面也寫了個定時器調(diào)用。。
也可以不再js中寫最后一個setTimeout,但是這樣就必須在html中調(diào)用函數(shù),才可以得出效果