0

我正在尝试创建一个函数,该函数以编程方式生成可迭代的 Promise,以通过使用promise.all如下方式调用它们:

   const fetchRandomItems = async (numberOfItems) => 
   const myPromises = [fetchRandomItem, fetchRandomItem, fetchRandomItem] // The length of this array should be equal to numberOfItems
   promise.all(myPromises)
}

我不知道如何使 myPromises 的长度等于 numberOfItems

请和谢谢!

4

1 回答 1

1

你构建一个数组,就好像 Promise 是任何其他对象一样。

const fetchRandomItems = numberOfItems => {
    const myPromises = [];
    for (let i = 0; i < numberOfItems; i++) {
        myPromises.push(fetchRandomItem());
    }
    return Promise.all(myPromises);
}

或者

const fetchRandomItems = numberOfItems => 
    Promise.all([...Array(numberOfItems)].map(() => fetchRandomItem()))
于 2021-07-09T16:52:41.373 回答