在 JavaScript 中,可以使用try-catch块来捕获来自Promise的异常。以下是一个包含代码示例的解决方法:
try {
// 创建一个Promise
const myPromise = new Promise((resolve, reject) => {
// 模拟异步操作
setTimeout(() => {
// 抛出一个异常
throw new Error('Something went wrong!');
}, 2000);
});
// 在Promise上调用.then()处理成功情况
myPromise.then(result => {
console.log(result);
}).catch(error => {
console.error('Caught an error:', error);
});
} catch (error) {
console.error('Caught an error:', error);
}
在上述代码中,我们通过setTimeout函数模拟了一个异步操作并在其中抛出了一个异常。然后,在Promise上使用.then()方法处理成功情况,并使用.catch()方法捕获异常。但是,由于异常是在异步操作中抛出的,所以无法被try-catch块捕获。因此,为了能够捕获到来自Promise的异常,我们可以使用.catch()方法来处理异常情况。
上一篇:捕获扩展异常。