We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
起源于一个问题:promise的错误能不能被外层的try catch捕获?
try{ Promoise.reject('我就是要报错!') }catch(err){console.log(err)} try{ await Promoise.reject('我就是要报错!') }catch(err){console.log(err)}
第一个是没办法捕获到这个错误的,而第2个是可以的。
catch 是 .then(null, rejection)的别名,用于指定发生错误时的回调函数。
所以常常见到下面这个写法:
promise.then().catch() promise.then().then().catch() promise.then().then().catch().then().catch()
async function tryPromise(){ await Promise.reject('错误') await Promise.resolve('输出') return } try{ await tryPromsie()}catch(err){ }
第一个await出错,错误给后面的catch。async函数直接结束,后面的await就不会执行。 如果想在第一个await出错时候,后面的await还执行,可以在第一个await外层套一个try catch。
后面再看看await是怎么处理错误的,后面在更新。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
promise的错误捕获
起源于一个问题:promise的错误能不能被外层的try catch捕获?
主要关键点:
问题的导入:
第一个是没办法捕获到这个错误的,而第2个是可以的。
promise自带的catch方法
所以常常见到下面这个写法:
await与try catch
第一个await出错,错误给后面的catch。async函数直接结束,后面的await就不会执行。
如果想在第一个await出错时候,后面的await还执行,可以在第一个await外层套一个try catch。
The text was updated successfully, but these errors were encountered: