1. 程式人生 > >js setTimeout 和 setInterval

js setTimeout 和 setInterval


JavaScript 一個設定的時間間隔之後來執行程式碼,稱之為計時事件。
主要通過兩個方法來實現: 1.setInterval() - 間隔指定的毫秒數不停地執行指定的程式碼。 2.setTimeout() - 暫停指定的毫秒數後執行指定的程式碼 並且,這兩個方法都是window物件的方法。
setInterval() 方法
可按照指定的週期(以毫秒計)來呼叫函式或計算表示式 方法會不停地呼叫函式。直到 clearInterval() 被呼叫或視窗被關閉。
由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的引數。
setInterval(code,millisec[,"lang"]);
code: 必需。要呼叫的函式或要執行的程式碼串。 millisec: 必須。週期性執行或呼叫 code 之間的時間間隔,以毫秒計
呼叫方法: function interval(){ console.log('setInterval'); } var num = setInterval(interval,1000); var num = setInterval("interval()",1000); 清除的方法 function timeTime(){ clearInterval(num); }
setTimeout() 方法用於在指定的毫秒數後呼叫函式或計算表示式

setTimeout(code,millisec)
code : 必需。要呼叫的函式或要執行的 JavaScript 程式碼串 millisec 必需。在執行程式碼前需等待的毫秒數。
setTimeout() 只執行 code 一次。如果要多次呼叫,請使用 setInterval() 或者讓 code 自身再次呼叫 setTimeout()。
// 方法觸發5s後,會輸出。 延遲1秒執行 function consoleMessage() { setTimeout("console.log('11111')",5000);
}
// 執行一次之後就停止了 var t; function timeCount(){ console.log('2'); } t = setTimeout("timeCount()",1000);
// 通過呼叫方法,啟動後可以無限的執行.返回的t是一個id值 var t; function timeCount(){ console.log('2'); t = setTimeout("timeCount()",1000); console.log('t',t);// 1,2,3,4 } 寫了一個小Demo,使用了一下計時器;

https://github.com/zhouyujuan/setTime