JavaScript暂停循环直到功能完成

时间:2020-10-09 07:15:34

标签: javascript

我正在尝试循环一个函数,但是我需要循环来暂停,执行该函数然后继续循环。该功能大约需要1到5分钟才能完成。然后我想取消暂停循环并重做20次功能。

到目前为止我已经尝试过:

for(i = 0; i < 20; i++) {
    //Some function here
}
do {
var i = 0
// Some function here
i++
} while (i < 20)

1 个答案:

答案 0 :(得分:2)

如果您的函数是异步的,则可以定义这样的循环以等待过程完成。对于同步功能,您无需执行任何操作。循环将自动等待直到完成

async function doAll()
{
  for(i = 0; i < 20; i++) {
    await heavyDutyFn()//this function should return a promise always
  }

}