我们都知道,在某一行代码出现异常后,后续的代码就不执行。这非常让人蛋疼。良好的异常处理机制可以让用户及时得到提醒。从而改正错误。
从ES3开始,js也提供了类似的java和C#的异常处理机制,从而让js代码变的更健壮,及时执行的过程中出现了异常,也可以让程序具有了一部分的异常恢复能力。
js的异常处理语句基本用法
- try…catch语句
try{
//可能会出现异常的代码
}
catch{
//出现异常后执行的代码
}
- finally语句
try{
//可能会出现异常的代码
}
catch{
//出现异常后执行的代码
}
finally{
//不管有没有出现异常,我都会执行。
//某些大佬说,在前端用到finally语句的情况较少,一般是后台用。
}
eg:定义一个函数,其作用是求两个数字的和,在输入参数后,用typeof对参数进行检验,如果参数不正确,则抛出异常。提示用户输入正确的参数。
typeof的返回值是string类型
function sum(num1, num2){
if(typeof num1 == "number" && num2 == "number" ){
return num1 + num2;
}
else{
throw{
errMsg: "哟呵,参数传错了哟",
errCode: 10086
}
}
}
try{
sum(0);
}
catch(e){
console.log(e.errMsg+",错误代码"+e.errCode);
}
finally{
console.log("不管代码有没有出现异常,我都会执行。");
}
运行界面