try catch栗子
function getCol(obj) {
let _temp = [];
let mobileCol="a"
try {
const { mobile} = obj.userlist;
_temp =mobileCol;
} catch (e) {
console.error('哦哦~~😢,出错啦!\n', e);
} finally {
}
return _temp;
}
console.log('col',getCol({}))
console.log("这是报错后仍然能执行的结果")
执行结果如下:
image.png发现没有,虽然报错了,但是getCol()
的结果以及后面的console结果都能打印出来,并不会影响正常的流程执行,只是在控制台把错误给抛出来了。
不用try catch 栗子
function getCol(obj) {
let _temp = [];
let mobileCol="a"
const { mobile} = obj.userlist;
_temp =mobileCol;
return _temp;
}
console.log('col',getCol({}))
console.log("这是报错后仍然能执行的结果")
执行结果
image.png注意它在控制台抛出错误的时候,把后面的程序中断了。getCol的结果以及console的结果都没有打印出来。
总结
在写js的时候,如果不想去做太多的可能出错条件判断,那么就可以采用try catch的写法,既可以抛出错误,又不会阻断正常的程序执行
网友评论