MST

星途 面试题库

面试题:JavaScript 中 async/await 如何处理错误

请描述在 JavaScript 里使用 async/await 时,常见的错误处理方式有哪些,并举例说明如何捕获和处理异步操作中抛出的错误。
40.8万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试

在JavaScript里使用async/await时,常见的错误处理方式有以下两种:

使用try...catch块

这是最常用的方式,try块中放置await语句,catch块捕获异步操作抛出的错误。

async function asyncFunction() {
    try {
        const result = await someAsyncOperation();
        console.log(result);
    } catch (error) {
        console.error('Error occurred:', error);
    }
}

在上述代码中,someAsyncOperation是一个返回Promise的异步函数,如果该Promise被拒绝,catch块将会捕获到错误并执行相应的处理逻辑。

使用Promise的.catch()方法

async函数返回的Promise直接使用.catch()方法处理错误。

async function asyncFunction() {
    return await someAsyncOperation();
}

asyncFunction()
  .then(result => console.log(result))
  .catch(error => console.error('Error occurred:', error));

这里asyncFunction执行后返回一个Promise,当someAsyncOperation抛出错误时,.catch()块会捕获并处理该错误。