try: 语句测试代码块的错误,一般把可能会出错的代码放到这里catch:只有try里面的代码
try: 语句测试代码块的错误,一般把可能会出错的代码放到这里
catch: 只有try里面的代码块发生错误时,才会执行这里的代码,参数err记录着try里面代码的错误信息
finally: 无论有无异常里面代码都会执行
try{
console.log(0);
}catch (err){
console.log(1);
console.log(hello);
}finally {
console.log(2);
}
//最后结果分别打印出 0 2
/*
try{
a.b.c();
}catch (e){
console.log(1);
console.log(hello);
}finally {
console.log(2);
}
*/
//最后结果分别打印出 1 2 报错:hello is not defined
/*
try{
a.b.c();
}catch (e){
console.log(1);
try{
console.log(hello);
}catch (e){
console.log(3);
}
}finally {
console.log(2);
console.log(word);
}
*/
//最后结果分别打印出 1 3 2 报错:word is not defined
/*
try{
a.b.c();
}catch (e){
console.log(1);
console.log(hello);
}finally {
console.log(2);
console.log(word);
}*/
//最后结果分别打印出 1 2 报错:word is not defined
总结:
try里面的代码报错的时候,catch里面的代码才会执行,finally里面的代码永远会执行
catch和finally里面,正常的代码会从上到下顺序执行
如果只是catch里面代码出错,则报catch里面的错误
如果catch和finally都出错则会报finally里面的错误
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!
js try catch finally