重復聲明變量
var num = 0,i; function startCount(){ ? ?document.getElementById("count").value = num; ? ?num += 1; ? ? i = setTimeout("startCount()",100); ? ?} function stopCount(){ ? ? clearTimeout(i); ?} 這樣是ok的,但是把六行的i前面加上var,即var i = setTimeout("startCount()",100);就有問題呢?
2016-08-01
你在第六行的i前面加上var,對于startCount()來說他是個局部變量,那么在stopCount()中的i的值只能是第一行中的全局變量i而不能用局部變量中的i;也可以理解為一個函數的局部變量不能在另一個函數中直接引用
2016-07-14
我試了你的代碼了,加上var也還是能正常運行的啊。感覺樓上那幾個都是扯犢子,var只是聲明變量而已,怎么還可能影響他的作用域。
2016-06-22
1樓正解 ? ? ?你前面聲明的i的在
<script type="text/javascript"></script> 內 都有效?
2016-06-22
i是全局變量,函數內不能聲明和i名字一樣的變量