如何在循环中具有同步和异步延迟承诺

时间:2018-07-04 10:24:07

标签: javascript node.js promise

我正在使用以下库来延迟承诺:

const prom = require('util').promisify;
const delayedProm = prom(setTimeout);

我在'.then(())'内部有两个嵌套循环,并且在内部循环中有if-condition。当满足此条件时,我想延迟到一定时间 时间量,则循环应正常继续。当两个循环完成迭代时,promise应该被解决并返回。

请让我知道如何实现同步和异步

代码

return func()
.then((execs) => {

for () {
    for () {

        if (condition) {
            dely(interval)
        }
    }
}

return resolvedPromise
})

1 个答案:

答案 0 :(得分:0)

要在循环中使用delayawait非常有用:

return (async function() {
  const execs = await func();

  for () {
    for () {
      if (condition) {
        await delay(interval)
      }
    }
  }
})()

继续阅读:

Using async/await with a forEach loop