JavaScript:在页面加载时运行setInterval

cha*_*doh 2 javascript setinterval

我想每20秒运行一些代码.这很好.但是我想setInterval在第一次遇到时运行,然后开始计时(而不是先做时间).

显然,我可以这样做:

myFunction();
setInterval(myFunction, 20000);
Run Code Online (Sandbox Code Playgroud)

但我觉得有点不雅.我宁愿做类似的事情

setInterval(myFunction, 20000, { waitBeforeFirstRun: false });
Run Code Online (Sandbox Code Playgroud)

这样的设置是否存在setInterval

Esa*_*ija 6

(function wrap(){
    myFunction();
    setTimeout( wrap, 20000 );
})();
Run Code Online (Sandbox Code Playgroud)


Dav*_*ing 5

怎么样:

setInterval(?function foo(){
    // logic
    return foo;
}(), 20000);?
Run Code Online (Sandbox Code Playgroud)