今天来复习下javascript的基础 和常见异常错误举例 内容如下:
name 错误名
number 错误号
description 描述
message 错误信息?
?
常见的异常
EvalError
RangeError
ReferenceError
SyntaxError
TypeError
URIError
?
代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> JavaScript中的异常处理 </TITLE> <META NAME="Content-Type" CONTENT="utf-8"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> <SCRIPT LANGUAGE="JavaScript"> <!-- //异常对象常见的四种属性 /* try{ alert(result); }catch(e){ alert("异常名字:"+e.name); alert("异常号:"+e.number); alert("异常的描述信息:"+e.description); alert("异常的错误信息:"+e.message); } */ //throw方式抛出异常 //要求用户输入一个大于等于0到小于等于10之间的数,如果输入的值小于0,提示输入的值不能小于0;如果输入的值大于10,提示输入的值不能大于10;如果输入的值不是数值类型,提示请输入数字。 /* try{ var result=prompt("请用户输入一个0到10之间的数字"); if(result<0){ throw new Error("-1","输入的值不能小于0"); }else if(result>10){ throw new Error("-2","输入的值不能大于10"); }else if(isNaN(result)){ throw new Error("-3","您输入的不是数字,请输入一个0到10之间的数字"); }else{ alert("您输入的数值是:"+result); } }catch(e){ alert(e.name); alert(e.number); alert(e.description); alert(e.message); }finally{ //执行特殊的语句,如无论是否发生异常,都需要执行的语句 alert("this is finally!"); } */ //TypeError――当遇到一个意外的类型时引发该异常对象,如未声明的变量。 //SyntaxError――在解析js代码时,其中的语法错误引发该异常对象。 //ReferenceError――使用一个无效的引用时引发该异常对象。 //EvalError――在错误的调用eval函数时引发该异常对象。 //RangeError――在一个数字型变量的值超出了其范围时引发该异常对象。 //URIError――在错误的使用encodeURI或者decodeURI函数时引发该异常对象。 /* function addMethod(a,b){ if(arguments.length!=2){ throw new Error("-1","该方法的参数个数不等于2,请输入两个参数!"); }else{ return a+b; } return eval(a+b); } try{ var a=3; var b=5; var result=addMethod(a,b); alert("结果为:"+result); }catch(e){ alert("异常名字为:"+e.name); alert("异常号为:"+e.number); alert("异常消息为:"+e.message); alert("异常说明为:"+e.description); } */ onerror=handlerError; //句柄返回true,浏览器不会提示自带的错误信息 //句柄返回false,浏览器会触发自带的错误信息。IE浏览器的左下角提示一个感叹号的标志,火狐浏览器右下角出现脚本错误的信息。 function handlerError(message,url,line){ var text="错误消息为:"+message+"\n"; text+="发生的url地址为:"+url+"\n"; text+="错误行号为:"+line+"\n"; alert(text); return falae; } alert(abc); //--> </SCRIPT> </HEAD> <BODY> </BODY> </HTML>?