执行超时函数队列循环(javascript)



我在这里面临一个问题,我需要运行,例如,每次运行 2 个函数,只需等待 2 分钟,然后再次开始运行这两个函数,就像批处理之间暂停的循环一样。我在这里尝试了一些东西,我知道我的问题是,每次我使用函数作为回调启动myFunctionstart我都会收到重复的调用。但是现在,我真的不知道最好的方法是什么。

var count = 0;
function myFunction() {
  console.log('function called', count);
  start();
}
function batch () {
  for (i = 0; i < 2; i++) {
    myFunction();
    console.log('batch', i);
  }
  console.log('--------------');
}
function start() {
  console.log('started')
  setTimeout(function() {
    batch();
  }, 2000);
  count++;
}
start();

感谢您的建议;)

据我了解,您希望每两分钟执行两个函数。

你试过使用window.setInterval吗?

const func1 = () => console.log('func1 called');
const func2 = () => console.log('func2 called');
window.setInterval(() => {
    func1();
    func2();
}, 1000);

现在,func1func2将每秒调用一次。

最新更新