共计 893 个字符,预计需要花费 3 分钟才能阅读完成。
JS 应用 try catch 捕捉异样
博客阐明
文章所波及的材料来自互联网整顿和集体总结,意在于集体学习和教训汇总,如有什么中央侵权,请分割自己删除,谢谢!
简介
前端是攻克客户的先锋,须要特地留神到用户体验。在开发中,因为各种问题,异样的呈现时不可控的,所以须要对异样进行解决,优化用户体验。
try catch finally 应用
try
语句容许定义在执行时进行谬误测试的代码块。
catch
语句容许定义当 try
代码块产生谬误时,所执行的代码块。
finally
语句在 try
和 catch
之后无论有无异样都会执行。
留神点: catch
和 finally
语句都是可选的,但在应用 try
语句时必须至多应用一个。当谬误产生时,JavaScript 会进行执行,并生成一个错误信息。能够应用 throw
语句 来创立自定义音讯(抛出异样)
try {// tryCode - 尝试执行代码块}
catch(err) {// catchCode - 捕捉谬误的代码块}
finally {// finallyCode - 无论 try / catch 后果如何都会执行的代码块}
异样解决的必要
加强用户体验,精确定位问题,欠缺的前端解决计划,比方前端监控零碎
异样解决的场景
JS 语法错误、代码异样
Promise 异样
Iframe 异样
跨域异样
接口申请 AJAX 申请异样
动态资源导入加载异样
try catch 的留神点
只能捕捉到同步的异样,不能捕捉语法和异步的异样,在日常应用中须要留神
// 不能捕捉语法的异样
try {let name = 'aaa // 少写'} catch(e) {console.log('捕捉到异样:',e);
}
// VM421:1 Uncaught SyntaxError: Unexpected identifier
// 不能捕捉异步的异样
try {setTimeout(() => {console.log(a) // 未声明 a 变量
}, 1000) } catch(e) {console.log('捕捉到异样:',e);
}
// blog.js:1 Uncaught ReferenceError: a is not defined
感激
万能的网络
菜鸟教程
阮一峰的 es6 语法教程
以及勤奋的本人,集体博客,GitHub
正文完
发表至: javascript
2021-07-03