簡體   English   中英

為什么這個簡單的javascript代碼不起作用?

[英]Why is this simple javascript code not working?

var interval = 250
setInterval(function(){
if ( 1==1 ) {
interval = 5000
}
}, interval)

如果1 == 1,則應將間隔設置為5000,但將間隔保持為250。

因為在這種情況下interval僅被評估一次,所以在調用setInterval函數時(請注意與setInterval 參數函數的區別,它將被重復調用)。

要在第一次運行后更改間隔,可以改用setTimeout ,例如:

setTimeout(function() {
  (function _t() {
    // doSomethingUseful(); 
    setTimeout(_t, 5000);
  })();
}, 250);

您必須重新調用setInterval才能更改間隔。 我會改用setTimeout循環。

執行回調函數時,使用250作為參數調用setInterval,並且在函數中更改間隔值時,此更改不會影響先前的設置值。

setInterval將每250 MS調用一次回調,但是setInterval本身將被調用一次

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM