Promise.allSelect()
时间: 2023-10-20 12:36:34 浏览: 109
js操作数据库.doc
`Promise.allSelect()` 是一个 JavaScript 函数,用于同时处理多个 Promise 对象,并在所有 Promise 都完成后返回一个新的 Promise。这个函数接收一个包含多个 Promise 对象的数组作为参数,并返回一个新的 Promise 对象。当所有传入的 Promise 对象都成功完成时,新的 Promise 对象将解析为一个包含所有 Promise 结果的数组。如果有任何一个 Promise 失败,新的 Promise 对象将被拒绝。
示例代码:
```javascript
const promise1 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Promise 1 resolved');
}, 1000);
});
const promise2 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Promise 2 resolved');
}, 2000);
});
Promise.allSelect([promise1, promise2])
.then((results) => {
console.log('All promises resolved:', results);
})
.catch((error) => {
console.error('One or more promises rejected:', error);
});
```
在这个示例中,我们创建了两个 Promise 对象,它们分别在 1 秒和 2 秒后解析。然后我们使用 `Promise.allSelect()` 同时等待这两个 Promise 对象。当它们都成功完成时,我们将在控制台中打印出 "All promises resolved",以及一个包含两个解析值的数组。如果有任何一个 Promise 被拒绝,我们将在控制台中打印出 "One or more promises rejected"。
阅读全文