如何在 JavaScript 中连续运行一组给定的 Promise?
给定一个 Promise 数组,我们必须连续运行它。为了完成这个任务,我们可以使用then(),在完成一个 Promise 之后运行下一个 Promise。
方法: then()方法返回一个 Promise,它帮助我们链接承诺/方法。 Promise.resolve()方法执行第一个回调,当这个 Promise 被实现时,它会传递给下一个函数callback1,它一直持续到所有的 Promise 都被实现。这样,我们就可以串联运行所有的 Promise。
句法:
Promise.resolve( callback0 )
.then( callback1 )
.then( callback2 )
.then( callback3 )...
示例 1:在此示例中,我们将通过 then() 方法链接每个 Promise 来执行 3 个 Promise。
HTML
GeeksforGeeks
Promises
HTML
GeeksforGeeks
Promises
输出:
https://www.facebook.com will be fetched now
https://www.twitter.com will be fetched now
如果数组中有更多的 Promise,上述方法是不可行的。函数的链接会变得非常累人,并且会使代码变得冗长。我们可以使用forEach()数组函数 通过将结果存储在变量中并在每次承诺时更新该变量来执行承诺。这将自动通过所有的承诺,并且可以防止重复编写then()语句。
示例 2:在此示例中,我们将使用 forEach() 方法执行多个 Promise。
HTML
GeeksforGeeks
Promises
输出: