我想每20秒运行一些代码。这很好。但我希望setInterval
在第一次遇到时运行,然后开始计时(而不是先做时间)。
显然,我可以这样做:
myFunction();
setInterval(myFunction, 20000);
但我觉得有点不雅。我更喜欢做像
这样的事情setInterval(myFunction, 20000, { waitBeforeFirstRun: false });
setInterval
是否存在此类设置?
答案 0 :(得分:6)
(function wrap(){
myFunction();
setTimeout( wrap, 20000 );
})();
答案 1 :(得分:5)
怎么样:
setInterval(function foo(){
// logic
return foo;
}(), 20000);