var interval = 250
setInterval(function(){
if ( 1==1 ) {
interval = 5000
}
}, interval)
如果1 == 1,则应将间隔设置为5000,但它会将间隔保持为250。
答案 0 :(得分:3)
因为在这种情况下interval
只评估一次,所以调用setInterval
函数时(注意与setInterval
参数函数的区别,这将被调用重复地)。
要在第一次运行后更改间隔,您可以改为使用setTimeout
,例如:
setTimeout(function() {
(function _t() {
// doSomethingUseful();
setTimeout(_t, 5000);
})();
}, 250);
答案 1 :(得分:1)
如果不重新调用setInterval,则无法更改间隔。我会使用某种setTimeout循环。
答案 2 :(得分:1)
执行回调函数时,使用250作为参数调用setInterval,当您更改函数中的间隔值时,此更改不会影响先前设置的值。
答案 3 :(得分:0)
setInterval将每250 MS调用一次回调,但setInterval本身将被调用一次