javascipt异常处理(js中有哪些异常该如何处理)
导语:JavaScript 中 何为异常-如何处理-如何抛出
异常的概念:程序在运行过程中出现的错误 (最大的特征:一旦代码出现异常 其后的代码就不再执行)
在js中出现异常后,浏览器会给出一段错误码,就是错误信息,错误消息由错误类型与错误详细点构成
错误类型:
1.Error:error构造函数创建一个错误对象,如果程序运行环境出现错误,就会抛出一个该错误类型的实例对象,除此之外该类型还支持用户自定义错误类型
2.TypeError:如果代码访问的数据类型错误 抛出异常
3.ReferenceError:当访问的变量不存在的时候 抛出异常
4.SyntaxError:当语法错误的时候 抛出异常
5.URIError:当前调用URI相关函数时出现错误 抛出异常
6.EvalError:当非法调用eval函数的时候 抛出异常
7.RangeError:当数组等类型的方位非法使用的时候 抛出异常
如何处理异常
就是要出现异常后 还能继续执行
常见的异常有两大类:
a.运行环境的多样性
b.代码错误 语法错误
try-catch语法: 即尝试这么做,如果出现错误捕获错误
try{
可能出现错误的代码
} catch(e){
处理错误代码
}
1.代码正常运行,如果在try中出现了错误,try里面出现错误语句后面的代码,都不再执行,直接跳转到catch中
2.catch中处理错误信息
3.然后继续执行后面的代码
4.如果try 中没有出现错误,那么不走catch,直接执行后面代码
try{
console.log(abc);
} catch (e){
console.log("异常啦"); //异常啦
console.log(e); //ReferenceError:abc is not defined
}
如何抛出异常(throw 对象)
1.throw是抛出异常的语法,其后跟一个对象 即错误信息对象
2.一般该对象使用new Error("错误消息")来创建,也支持任意对象
throw {name:"jia",age:12,sex:"女"}
throw new Error("我是一个自定义的抛出异常");
function Show ( msg ){
if(typeof msg !== 'string'){
console.log(msg);
throw new Error("传入的参数不是一个字符串");
}
}
Show(88);
补充:
try-catch 语法的最终结构是try-catch-finally
try{
可能出现错误的代码
} catch(e){
如果出现错误就执行
} finally {
结束try这个代码块之前执行,即最后执行(始终要执行);
}
本文内容由小竹整理编辑!