JavaScript中的setTimeout 和 setInterval 的區別

ajax 12年前發布 | 1K 次閱讀

window對象有兩個主要的定時方法,分別是setTimeout 和 setInteval  他們的語法基本上相同,但是完成的功能取有區別。

setTimeout方法是定時程序,也就是在什么時間以后干什么。干完了就拉倒。

setInterval方法則是表示間隔一定時間反復執行某操作。

如果用setTimeout實現setInerval的功能,就需要在執行的程序中再定時調用自己才行。如果要清除計數器需要 根據使用的方法不同,調用不同的清除方法:

例如:tttt=setTimeout('northsnow()',1000);

clearTimeout(tttt);

或者:

tttt=setInterval('northsnow()',1000);

clearInteval(tttt);

舉一個例子:

 <div id="liujincai"></div> 
<input type="button" name="start" value="start" onclick='startShow();'> 
<input type="button" name="stop" value="stop" onclick="stop();"> 
<script language="javascript"> 
   var intvalue=1; 
   var timer2=null; 
   function startShow() 
   { 
      liujincai.innerHTML=liujincai.innerHTML + "&nbsp;" + (intvalue ++).toString(); 
      timer2=window.setTimeout("startShow()",2000); 
   } 
   function stop() 
   { 
      window.clearTimeout(timer2); 
   } 
</script>

或者:

 <div id="liujincai"></div>
<input type="button" name="start" value="start" onclick='timer2=window.setInterval("startShow()",2000);//startShow();'>
<input type="button" name="stop" value="stop" onclick="stop();">
<script language="javascript">
   var intvalue=1;
   var timer2=null;
   function startShow()
   {
      liujincai.innerHTML=liujincai.innerHTML + "&nbsp;" + (intvalue ++).toString();
   }
   function stop()
   {
      window.clearInterval(timer2);
   }
</script>

 本文由用戶 ajax 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!