面试题答案
一键面试function executePromises(promiseFunctions) {
return Promise.all(promiseFunctions.map(func => func()))
.then(results => {
console.log(results);
return results;
})
.catch(error => {
console.error('An error occurred:', error);
throw error;
});
}
// 示例使用
const promiseFunctions = [
() => new Promise(resolve => setTimeout(() => resolve('Result 1'), 1000)),
() => new Promise(resolve => setTimeout(() => resolve('Result 2'), 500)),
() => new Promise(resolve => setTimeout(() => resolve('Result 3'), 1500))
];
executePromises(promiseFunctions);
上述代码定义了一个executePromises
函数,它接受一个包含返回Promise的函数的数组。通过Promise.all
方法并发执行这些函数,并在所有Promise都解决后打印出结果。如果任何Promise被拒绝,catch
块会捕获并处理错误。