MST

星途 面试题库

面试题:JavaScript 中 Promise 错误处理的基本方式

请描述在 JavaScript 中,使用 Promise 时,有哪几种基本的错误处理方式,并分别举例说明。
24.0万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试

在JavaScript中,使用Promise时基本的错误处理方式有以下两种:

.catch() 方法

.catch() 方法用于捕获Promise链中任何一个被拒绝的Promise。它会捕获从 then() 回调函数中抛出的错误,或者Promise被拒绝时传递的理由。

function asyncFunction() {
    return new Promise((resolve, reject) => {
        setTimeout(() => {
            reject('操作失败');
        }, 1000);
    });
}

asyncFunction()
   .then(result => console.log(result))
   .catch(error => console.error('捕获到错误:', error));

try...catch 结合 async/await

async 函数内部,可以使用 try...catch 块来捕获 await 操作的Promise被拒绝时的错误。

async function asyncFunction() {
    try {
        const result = await new Promise((resolve, reject) => {
            setTimeout(() => {
                reject('操作失败');
            }, 1000);
        });
        console.log(result);
    } catch (error) {
        console.error('捕获到错误:', error);
    }
}

asyncFunction();