1、不使用try...catch出现异常后,后面的代码都不会运行了
login() {console.log(b);console.log('hhhhhhhh');},
2、使用了try...catch出现异常后,try...catch后的代码还会继续运行
login() {try{console.log(b);}catch (e){console.log(e);}console.log('hhhhhhhh');},
3、使用了try...catch出现异常后,try...catch里面出现异常的代码后的代码不会继续运行
login() {try{console.log(b);console.log('222222222222');}catch (e){console.log(e);}console.log('hhhhhhhh');},
4、try...catch不能捕获异步的错误,异步的错误通常用promise的catch捕获
同步代码都继续走了下去,但是报错
login() {try{setTimeout(() => { console.log(b) // 未声明b变量}, 1000)console.log('222222222222');}catch (e){console.log(e);}console.log('hhhhhhhh');},
5、catch
和 finally
语句都是可选的,但在使用 try
语句时必须至少使用一个
只能捕获到同步的异常,不能捕获语法和异步的异常,在日常使用中需要注意。
但是语法异常一般开发工具就捕获了。