使用setInterval(f,time)时,是否有可能在等待一段时间之前先执行函数f?
答案 0 :(得分:2)
不在setInterval函数本身内。只需明确地调用它。
f();
setInterval(f, time);
答案 1 :(得分:0)
注意:即使您设置了间隔。由于javascript是单线程的,因此无法确保函数将按时触发,并且它将等到堆栈中的当前执行函数完成。
setInterval中传递的函数不会在setInteral中第一次触发。我们必须手动调用该函数。
FUNC();
setInterval(func,time);
答案 2 :(得分:0)
如果您希望在等待x时间之前触发该函数,然后在所述时间之后再次执行,并且一次又一次地执行,则必须在开始间隔之前显式调用函数f,如下所示:
var f = function () {
document.write('<p>Function executed</p>');
}
f();
setInterval(f, 3000);
&#13;
请注意,时间以毫秒为单位,因此如果您希望函数每1秒重复一次,则应使用数字1000.
如果您希望将时间间隔更精确地考虑将其放在Web工作者中,则不支持所有浏览器。