async/await 捕获错误 捕获catch

19 篇文章 1 订阅

async/await出现后,它可以 用同步的方式执行异步操作,解决了Promise的嵌套问题。

但是,promise有 catch 方法用于指定发生错误时的回调。

promise.then((value) => {
  console.log(value);  
}.catch((error)=>{
  console.log(error)
});

那 async/await 如何捕获 catch?

直接在后面接 .catch()

const getData = async () => {
  const res = await getData().catch(err => {
    console.log(err);
  })
}

使用 try/catch

const getData = async () => {
  try {
    const res = await getData()
  } catch (err) {
    console.log(err);
  }
}

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在使用async/await进行异步编程时,可以通过try...catch语句来捕获错误。这种方式可以在try块中执行可能导致错误发生的代码,然后在catch块中处理错误情况。在catch块中,我们可以根据具体的错误类型进行相应的处理操作。 另一种方式是使用awaitWraper函数封装异步函数调用,该函数可以将错误和正确的返回值进行区分。通过使用awaitWraper函数,我们可以避免每次都写冗余的错误处理代码,从而使代码更简洁和优雅。在使用这种方式时,我们可以通过解构赋值来获取错误和返回值,然后根据需要进行处理。 总之,无论是使用try...catch语句还是封装成工具函数,都可以实现async/await错误捕获和处理,让异步编程更加可靠和健壮。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [async/await错误捕获](https://blog.csdn.net/qq_39970857/article/details/116979564)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [async/await错误捕获](https://blog.csdn.net/Amnesiac666/article/details/123104855)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值