在Imacros有哪种方法可以在一段时间内执行一段代码?

时间:2015-11-17 23:43:04

标签: javascript imacros

例如,假设我想运行一段代码5分钟,我希望它循环5分钟然后停止。

这就是我制作一个循环的方法,是否有可能对它做任何事情,然后在5分钟后停止循环?

抱歉,如果这是一个愚蠢的问题,但对此新

  

for(;;)iimPlay(“GHOST.iim”);

1 个答案:

答案 0 :(得分:0)

我假设iimPlay是同步的,执行一次只需不到5分钟:

var start = Date.now();
for (;;) {
  iimPlay("GHOST.iim");
  if(Date.now()-start > 300000) break;
}

这里我们检查自从我们开始运行循环以来的毫秒数。一旦超过300000毫秒(5分钟),我们就会打破循环。

如果您希望它运行5分钟,等待5分钟,再次运行5分钟,您可以使用setTimeoutsetInterval

再次运行
function runForFiveMinutesForever() {
    var start = Date.now();
    for (;;) {
      iimPlay("GHOST.iim");
      if(Date.now()-start > 300000) break;
    }
    setTimeout(runForFiveMinutesForever, 300000);
}

并通过调用runForFiveMinutesForever:

来运行它
runForFiveMinutesForever();