首页 > 解决方案 > setTimeout 现在和给定时间执行

问题描述

有没有办法setTimeout立即运行,然后在给定的时间再次运行。例如,我希望这个 updateItemsCache 函数在加载时运行,然后每 3 秒再次运行一次。

现在它只每 3 秒执行一次。

function updateItemsCache(){
  setTimeout(() => {
  //do stuff
  }, 30000);

}

标签: javascriptsettimeout

解决方案


https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout

不,只需创建一个函数并在超时前调用一次,在超时内调用一次

function updateItemsCache(){
  innerLogic()
  setTimeout(innerLogic, 30000);

}

function innerLogic(){

}

推荐阅读