点击这里给我发消息 点击这里给我发消息

JavaScript的函数和异常处理

添加时间:2013-12-7
    相关阅读: 页面 网络 程序 HTML JavaScript 链接

  JavaScript的函数:

  函数的定义:函数是由关键字function、函数名加一组参数已经置于大括号中需要执行的一段语句定义的。语法:

  <script language="javascript">

  function functionName(parameters){

  some statements;

  }

  </script>

  注:函数的定义语句通常被放在HTML文件的<HEAD>段中,而函数的调用语句通常被放在<BODY>段中。

  在事件响应中调用函数:当用户单击某个按钮或某个复选框时都将触发事件,通过编写程序对事件做出反应的行为称为相应事件。

  <script language="javascript">

  function test(){

  alert("test") }

  </script>

  </head>

  <body>

  <form action="" methon="post" name="form1">

  <input type="button" value="提交" onClick="test();">

  </form>

  </body>

  通过链接调用函数:在<a>标签中的href标记中使用javascript:关键字调用函数。

  <script language="javascript">

  function test(){

  alert("test");

  </script>

  </head>

  <body>

  <a href="javascript:test();">test</a>

  </body>

  arguments对象:在JavaScript函数代码中,可以使用arguments特殊对象,可以使用arguments[0]访问函数的第一个参数值,使用arguments[1]访问函数第二个参数值,...同时还可以使用arguments.length获取函数的参数个数:

  function testArgs(){

  for(var i=0;i<arguments.length;i++){

  document.write("函数参数的个数为:"+arguments.length+"运行结果为:"+arguments[i]+"。")}

  }

  注:

  arguments[0]即为第一个参数,不是函数的名称。

  函数定义的时候形式参数可以省略。

  JavaScript中的内置函数

  eval():求字符串中表达式的值。

  isFinite():判断一个数值是否为无穷大。

  isNaN():判断一个数值是否为NaN。

  parseInt():将首位为数字的字符串转化为整型,如果字符串不是以数字开头,则返回NaN。

  parseFloat():将首位为数字的字符串转化为浮点型数字,如果不是以数字开头,则返回NaN。

  encodeURI():将字符串转化为有效的URL(URI和URL都可以表示网络资源地址,URI比URL的表示范围更加广泛)。

  encodeURIComponent():将字符串转化为有效的URL组件。

  decodeURI():对encodeURI()编码的文本进行解码。

  DecodeURIComponent():对encodeURIComponent()编码的文本进行解码。

  JavaScript的异常处理:

  注:一个程序通常有3种类型的异常,分别为“语法异常”、“运行时的异常”和“逻辑异常”。

  IE浏览器内建的错误报告:IE浏览器自能发现程序中的语法错误,对于程序中的逻辑错误还不能发现。【"工具"/"Internet选项"-->"浏览"选择"显示每个脚本错误的通知"】

  处理异常:JavaScript语言处理异常通常有两种方式。一种方式是使用onerror事件,该事件可以在window对象或图像对象上触发,而另一种方式是使用try...catch...finally模型。

  1) 触发onerror事件处理异常:onerror事件处理异常提供了3中信息来确定发生异常的详细信息:

  1.异常信息:获取异常信息(ms)

  2.URL:获取发生异常的文件的绝对路径。(Url)

  3.行号:给定发生异常文件的行号。(Line)

  window.onerror:触发onerror事件

  <script language="javascript">

  window.onerror=function(){

  alert("您调用的函数不存在\n"+ms+"\n"+Url+"\n"+Line+"\n");

  return true;

  }

  </script>

  注:如果在onerror事件处理函数中没有return true语句,在弹出错误提示对话框后,浏览器的错误报告也会显示出来。为了隐藏此错误报告,函数需要返回true.

  document.images[0].onerror

  <script language="javascript">

  document.images[0].onerror=function(){

  somestatements;

  return true;

  }

  </script>

  2)使用try...catch语句处理异常:

  <script language="javascript">

  try{

  somestatements;

  }

  catch(exception e){

  somestatements;

  }finally{

  somestatements;

  }

  </script>

  try...catch...finally语句中catch通常捕捉到的对象为Error对象,Error类是所有用于抛出异常的雷德基类,JavaScript中用于抛出异常的类如下所示:

 发生异常原因
 EvalError  错误发生在eval()函数中
 RangeError  数字的值超出JavaScript可表示的范围
 ReferenceError  使用了非法的引用
 TypeError  变量的类型错误
 URIError  在encodeURI()函数或decodeURI()函数中发生了错误

  Error对象有以下两个特性:

  1.name:表示异常类型的字符串。

  2.message:实际的异常信息。

  alert("实际的错误消息为:"+exception.message+"\n错误类型字符串为:"+exception.name);

  在程序中使用throw语句可以有目的的抛出异常,throw一般可以在try语句中:

  throw new TypeError("somestatements");

  JavaScript语言调试技巧:

  使用aler()语句进行调试。

  使用write()语句进行调试,将所有的调试信息以列表的方式放置在页面中。

  使用抛出自定义异常消息进行调试。

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册