如何在JavaScript中等待2个或更多承诺的结果?

28 阅读1分钟

说你需要启动2个或更多的承诺并等待它们的结果。如何做到这一点?

说你需要启动2个或更多的承诺,并等待他们的结果。

而你想继续下去,一旦你解决了这两个问题。

你如何做到这一点,在JavaScript中?

你可以使用Promise.all()

const promise1 = //...
const promise2 = //...

const data = await Promise.all([promise1, promise2])

const dataFromPromise1 = data[0]
const dataFromPromise2 = data[1]

如果你喜欢使用纯承诺而不是async/await,可以使用这个语法。

const promise1 = //...
const promise2 = //...

Promise.all([promise1, promise2]).then(data => {
	const dataFromPromise1 = data[0]
	const dataFromPromise2 = data[1]
})