有一个关于async的写法问题,如下:定义了一个api,fetchUser(),可以有两种写法:第一种,不进行错误的显示处理constfetchUser=async()=>{constres=awaitaxios.get('https://example.com')returnres.data}第二种,使用try..catch包裹constfetchUser=async()=>{try{constres=awaitaxios.get('https://example.com')returnres.data}catch(e){throwe.response}}使用上貌似没有差别,如下:fetchUser().then(user=>console.log(user)).catch(err=>console.error(err))个人的疑惑在于错误的捕获和处理,个人理解在于,只要是出现了错误,那么返回的promise对象就变成reject,只是第二个使用了catch捕获后包裹了一下错误信息再手动抛出.第一种少些了一点代码...所以想请教一下:这两种写法有没有具体的差别,或者说,再更加复杂的异步情况下会有哪些不同?使用哪种写法更加优雅?若能解答,不胜感激,多谢!
吃鸡游戏
米琪卡哇伊
相关分类