關於js中兩種定時器的設定及清除

2022-03-03 21:07:45 字數 1102 閱讀 1532

window.settimeout([function],[interval]) 設定乙個定時器,並且設定了乙個等待的時間[interval],當到達時間後,執行對應的方法[function],當方法執行完成定時器停止(但是定時器還在,只不過沒用了);

window.setinterval([function],[interval]) 設定乙個定時器,並且設定了乙個等待的時間[interval],當到達時間後,執行對應的方法[function],當方法執行完成,定時器並沒有停止,以後每隔[interval]這麼長的時間都會重新的執行對應的方法[function],直到我們手動清除定時器為止;

2、js中的定時器是有返回值的:->返回值是乙個數字,代表當前是第幾個定時器

var timer1=window.settimeout(function(){},1000); //timer1->1 當前是第乙個定時器

var timer2=window.settimeout(function(){},1000);  //timer2->2 當前是第二個定時器
window.cleartimeout(timer1); //->把第乙個定時器清除掉,這裡也可以用window.clearinterval(timer1)、window.cleartimeout(1)、window.clearinterval(timer1);
var timer3=window.settimeout(function(){},1000);   //timer3->3 當前是第三個定時器 ,雖然上面的定時器timer1清除掉了,但是號還是繼續往後排的;
window.clearinterval(timer1)/window.cleartimeout(time1);兩種清除方式都可以清除通過settimeout和setinterval設定的定時器(兩種方式在設定定時器的時候有區別,清除定時器的時候沒有區別),並且引數不僅可以是timer,還可以是其返回值,例如1,2;需要注意的是,定時器即使清除了,其返回值也不會清除,之後設定的定時器的返回值也會在其返回值的基礎上繼續向後排,這點類似於銀行的排隊領號,即使1號的業務辦理完了,後邊的人仍是從2號開始繼續領號,而不是重新從1開始;

**自:

js中兩種定時器的設定及清除

window.settimeout function interval 設定乙個定時器,並且設定了乙個等待的時間 interval 當到達時間後,執行對應的方法 function 當方法執行完成定時器停止 但是定時器還在,只不過沒用了 window.setinterval function inte...

JS中兩種定時器

settimeout 在指定的毫秒後呼叫函式或者計算表示式 傳入三個引數 code 必需 要呼叫的函式後要執行的js 串 millisec 必需 在執行 前需等待的毫秒數 lang 可選一般不寫,選擇指令碼語言型別 setinterval 按照指定週期來呼叫函式或者計算表示式。方法會不停地呼叫函式,...

javaScript中兩種定時器

1.var num setinterval 方法名 毫秒值 每隔一定的毫秒值就執行函式 clearinterval num 什麼時候想停止,將setinterval 的返回值num傳給clearinterval num 即可 獲取驗證碼 執行結果是 2.var num settimeout 方法名 ...