js中的异常处理

Posted 青衫易辞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中的异常处理相关的知识,希望对你有一定的参考价值。

js中的异常处理语句有两个,一个是try……catch……,一个是throw。

try……catch用于语法错误,错误有name和message两个属性。throw用于逻辑错误。

对于逻辑错误,js是不会抛出异常的,也就是说,用try catch没有用。这种时候,需要自己创建error对象的实例,然后用throw抛出异常。

(1)try……catch……的普通使用

错误内容:charAt()小写了

1 try{
2  var str="0123";
3  console.log(str.charat(2));
4 }catch(exception){
5     console.log("name属性-->"+exception.name);//name属性-->TypeError
6     console.log("message属性-->"+exception.message);//message属性-->str.charat is not a function
7 }

 

 (2)try……catch……无法捕捉到逻辑错误

错误内容:除数不能为0

try {
    var num=1/0;
    console.log(num);//Infinity
}catch(exception){
    console.log(exception.message);
}

 

 

(3)用throw抛出异常,需要自己现实例化一个error

注意:throw要用new关键字初始化一个Error,E要大写。同时,这个Error是异常里面的message属性!

try{
    var num=1/0;
    if(num=Infinity){
        throw new Error("Error大写,用new初始化-->除数不能为0");
    }
}
catch(exception){
    console.log(exception.message);
}

 

以上是关于js中的异常处理的主要内容,如果未能解决你的问题,请参考以下文章

片段中的Android致命异常

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

VSCode自定义代码片段——JS中的面向对象编程

VSCode自定义代码片段9——JS中的面向对象编程

片段中的getView()导致抛出异常,不确定原因

片段中的 EditText 上的空指针异常 [重复]