【问题标题】:Execute function queue loop with timeout (javascript)使用超时执行函数队列循环(javascript)
【发布时间】:2018-04-05 07:56:05
【问题描述】:

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

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();

感谢您的建议;)

【问题讨论】:

    标签: javascript loops recursion queue settimeout


    【解决方案1】:

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

    您是否尝试过使用window.setInterval

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-23
      • 2012-05-30
      相关资源
      最近更新 更多