js异常处理

name 错误名
number 错误号
description 描述
message 错误信息

常见的异常
EvalError
RangeError
ReferenceError
SyntaxError
TypeError
URIError

代码:
Java代码 
1.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
2.<HTML>  
3. <HEAD>  
4.  <TITLE> JavaScript中的异常处理 </TITLE>  
5.  <META NAME="Content-Type" CONTENT="utf-8">  
6.  <META NAME="Author" CONTENT="">  
7.  <META NAME="Keywords" CONTENT="">  
8.  <META NAME="Description" CONTENT="">  
9.  <SCRIPT LANGUAGE="JavaScript">  
10.  <!--  
11.  //异常对象常见的四种属性  
12.  /* 
13.    try{ 
14.        alert(result); 
15.    }catch(e){ 
16.        alert("异常名字:"+e.name); 
17.        alert("异常号:"+e.number); 
18.        alert("异常的描述信息:"+e.description); 
19.        alert("异常的错误信息:"+e.message); 
20.    } 
21.    */ 
22. 
23.    //throw方式抛出异常  
24.    //要求用户输入一个大于等于0到小于等于10之间的数,如果输入的值小于0,提示输入的值不能小于0;如果输入的值大于10,提示输入的值不能大于10;如果输入的值不是数值类型,提示请输入数字。  
25.    /* 
26.    try{ 
27.        var result=prompt("请用户输入一个0到10之间的数字"); 
28.        if(result<0){ 
29.            throw new Error("-1","输入的值不能小于0"); 
30.        }else if(result>10){ 
31.            throw new Error("-2","输入的值不能大于10"); 
32.        }else if(isNaN(result)){ 
33.            throw new Error("-3","您输入的不是数字,请输入一个0到10之间的数字"); 
34.        }else{ 
35.            alert("您输入的数值是:"+result); 
36.        } 
37.    }catch(e){ 
38.        alert(e.name); 
39.        alert(e.number); 
40.        alert(e.description); 
41.        alert(e.message); 
42.    }finally{ 
43.        //执行特殊的语句,如无论是否发生异常,都需要执行的语句 
44.        alert("this is finally!"); 
45.    } 
46.    */ 
47. 
48.    //TypeError——当遇到一个意外的类型时引发该异常对象,如未声明的变量。  
49.    //SyntaxError——在解析js代码时,其中的语法错误引发该异常对象。  
50.    //ReferenceError——使用一个无效的引用时引发该异常对象。  
51.    //EvalError——在错误的调用eval函数时引发该异常对象。  
52.    //RangeError——在一个数字型变量的值超出了其范围时引发该异常对象。  
53.    //URIError——在错误的使用encodeURI或者decodeURI函数时引发该异常对象。  
54.    /* 
55.    function addMethod(a,b){ 
56.     
57.        if(arguments.length!=2){ 
58.            throw new Error("-1","该方法的参数个数不等于2,请输入两个参数!"); 
59.        }else{ 
60.            return a+b; 
61.        } 
62.         
63.        return eval(a+b); 
64.    } 
65.
66.    try{ 
67.        var a=3; 
68.        var b=5; 
69.        var result=addMethod(a,b); 
70.        alert("结果为:"+result); 
71.    }catch(e){ 
72.        alert("异常名字为:"+e.name); 
73.        alert("异常号为:"+e.number); 
74.        alert("异常消息为:"+e.message); 
75.        alert("异常说明为:"+e.description); 
76.    } 
77.    */ 
78.      
79.    onerror=handlerError;  
80. 
81.    //句柄返回true,浏览器不会提示自带的错误信息  
82.    //句柄返回false,浏览器会触发自带的错误信息。IE浏览器的左下角提示一个感叹号的标志,火狐浏览器右下角出现脚本错误的信息。  
83.    function handlerError(message,url,line){  
84.        var text="错误消息为:"+message+"\n";  
85.        text+="发生的url地址为:"+url+"\n";  
86.        text+="错误行号为:"+line+"\n";  
87.        alert(text);  
88.        return falae;  
89.    }  
90. 
91.    alert(abc);  
92.  //-->  
93.  </SCRIPT>  
94. </HEAD>  
95. 
96. <BODY>  
97.    
98. </BODY>  
99.</HTML>

你可能感兴趣的:(异常处理)