欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    JavaScript错误与异常处理.ppt

    • 资源ID:5435994       资源大小:292.49KB        全文页数:28页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    JavaScript错误与异常处理.ppt

    第13章 JavaScript错误与异常处理,13.1 为何进行错误处理,在JavaScript脚本语言的发展过程中,由于早期的浏览器不支持错误处理语句,而只能在函数中返回-1、true或false等特殊的值,并根据这些返回值来判断代码是否出现错误 JavaScript脚本语言在版本更替过程中,提供了越来越多的错误处理方法,使开发者能快速确定发生了什么错误,以及定位错误发生的位置,从而大大提高了程序的正确性、可靠性,同时也很大程度上缩短了开发周期,具有十分重大的意义。,13.2 错误与异常的关系,JavaScript中的错误可以分为语法错误和运行错误。语法错误一般简称为错误(Error),而运行错误一般也叫做异常(Exception)。错误和异常同属于错误,但是也有着本质的区别。下面将分别予以介绍,并分析它们之间的异同点。,13.2.1 错误,错误,指语法性错误,即是偏离了可接受的代码行为的一个动作或者实例。在JavaScript脚本中,一旦有语法错误出现,整个程序不能正常启动运行。类似于C、C+、Java等高级语言,其语法检查在程序编译或解释时进行,一旦有语法错误存在,整个页面则无法正常装载,从而不能正常启动运行。,13.2.2 异常,异常,指运行时的错误,即程序已经通过编译或者解释,在程序执行过程中出现的一个事件中断了正常指令的运行。异常通常由一些非法的动作所引起。在JavaScript脚本中,异常的影响范围为该代码所在的线程,而其他不依赖于出现异常处的代码的线程则可以正常运行。,13.2.3 异同点,错误和异常都是程序的错误,皆为开发者所不能容忍。错误是语法性的错误,发生在程序编译或者解释时,其直接的后果将是程序无法正常启动;异常是非法动作所引起的错误,发生在程序运行时,其直接的后果是使程序不能正常地运行。,13.3 不同浏览器环境中的错误报告,不同浏览器内部使用不用的JavaScript解释器,因此错误报告的形式也是不尽相同的。有的是直接弹出错误消息,如Microsoft IE;有的只是简单地把错误消息记录在控制台中,如Mozilla。本节简要的介绍目前流行的几种浏览器对JavaScript的错误报告形式。,13.3.1 Windows IE,Windows IE中对JavaScript的错误报告形式是多样的。默认情况下,某些IE版本会弹出一个错误的警告框,并列出错误类型和错误所在的行数,如图13.4所示;某些IE版本只是在页面状态栏中显示:“页面出现错误”。,13.3.2 Mozilla,Mozilla是一个自由的、源码开放的浏览器(或核心),体积小速度快,为目前最流行的浏览器之一,Firefox浏览器为其中一种。Mozilla的实现完全不同于Microsoft IE,采用标签式浏览,并可以便捷地添加或扩展插件。,13.3.3 MacOS Safari,在众多浏览器中,MacOS Safari对JavaScript脚本错误调试的支持是最不尽如人意的。在默认的情况下,Safari不会产生任何错误报告。为了浏览器能报告JavaScript脚本错误,可以通过下列步骤完成:打开一个命令终端;运行命令:defaults write com.apple.Safari IncludeDabugMenu 1;重新启动Safari浏览器;此时浏览器工具栏成功添加“Debug”按钮,单击该按钮,并选上“Log JavaScript Exceptions”选项;在Application/Utilities下打开Console.app,则Safari在该控制台上报告JavaScript错误。,13.3.4 MacOS IE,MacOS IE在默认情况下,对JavaScript错误也不产生任何报告。为了浏览器能报告JavaScript脚本错误,可以通过下列步骤完成:选择菜单栏“编辑查看”,打开“查看”对话面板;选择“Web浏览器”选项卡,单击“Web设置”按钮,把其中“允许运行Script脚本(Enable Scripting)”和“显示错误报告(Show Scripting Error Alerts)”两个选项选中。通过以上步骤,如果页面中遇到JavaScript脚本错误,MocOS IE浏览器弹出警告框提示用户错误的类型。,13.3.5 Opera 7,和Mozilla相似,Opera 7同样以JavaScript控制台的方式来记录页面中的JavaScirpt脚本错误信息。可以选择菜单栏“窗口特殊插件JavaScript控制台”来打开此控制台。当页面中有JavaScript错误发生时,则在此控制台中记录下来,其错误信息包括:错误类型、错误信息、错误发生的线程以及发生错误的文件和行数等。,13.3.6 小结,上面几个小节分别简要介绍了不同浏览器环境中的错误报告形式,从中可明显地看出,各个浏览器平台均需进行彼此不同的设置,在浏览器载入包含错误或异常代码的文档时才能自动识别错误或异常代码的所在。既然错误对脚本程序具有很大的危害,在JavaScript脚本中进行相应的错误处理显得非常有必要。一般而言,JavaScript脚本提供了两种经典的错误处理方法:使用onerror函数和try/catch结构,下面分别介绍这两种错误处理方法的具体用法及使用场合。,13.4 使用onerror事件进行错误处理,onerror事件为浏览器对象模型(BOM:Browser Object Model)中定义的标准事件,用于捕捉代码的错误,并引导开发人员进行相应的处理,较之使用try/catch语句进行错误处理的方式,该方法简单明了,首先介绍BOM中定义的onerror事件。,13.4.1 onerror事件,onerror事件是BOM的标准事件之一,只要页面中发生错误,该事件立即被激活,开发者仅需添加事件处理函数即可。onerror事件被激活后,系统调用其对应的事件处理函数进行响应。在JavaScript脚本中,onerror事件处理函数可为如下两种结构:函数声明与函数体合并函数声明和函数体分离:,13.4.2 onerror错误处理方法,onerror事件被激活的同时,传递3个参数给事件响应函数:Error Message:错误报告消息,如缺少右括号、对象没有属性方法等;URL:发生错误的文件的URL地址;Line Number:错误所在的具体行数。程序运行后,单击页面中“异常”按钮,13.4.3 onerror错误处理方法的优缺点,onerror错误处理方法简洁易行,仅需添加onerror事件响应函数即可,获得的信息也较为丰富,包括错误信息、产生错误的文件以及错误所在行数等。不幸的是,onerror事件是浏览器对象模型(BOM)中定义的句柄,并不被特定的浏览器(如Safari等)所支持。也即是说,并不是所有的浏览器都支持onerror事件。即使在支持onerror事件的浏览器中,不同浏览器的处理方式也不尽相同。基于此,很多开发者往往偏爱于用第二种处理方式即使用try/catch结构来处理脚本中出现的错误。,13.5 使用try/catch结构进行错误处理,try/catch结构原本为Java等高级语言中才支持的经典错误处理方法,用于监视程序代码中隐藏的错误和异常。由于该结构处理程序代码隐藏的错误和异常非常有效,ECMAScript规范引入了在JavaScript脚本中获得支持的try/catch结构,来解决JavaScript脚本较为薄弱的错误报告、错误处理以及代码调试环节,首先来了解JavaScript脚本中的try/catch结构。,13.5.1 try/catch结构,熟悉Java程序设计语言的读者,对try/catch结构应该不会陌生,因为try/catch结构是Java语言中用来处理异常的经典结构。,13.5.2 Error对象,在上面的实例中,得到异常报告:“catch捕捉到异常!”。开发者同样会遇到使用onerror方法面临的突出问题:关于错误的信息量太少。事实上,catch部分引入的参数exceptionError对象。Error对象有两个属性:Name:Error对象的类型,Error对象是一个基类,其下面还有若干子类。Message:Error对象中包含的错误信息。,13.5.3 嵌套try/catch结构,虽然JavaScript不支持一个try关键字带多个catch的结构,但其支持嵌套的try/catch结构。嵌套try/catch结构可十分容易地解决部分读者关于“catch里面又发生异常怎么办”的问题。,13.5.4 throw抛出异常,try/catch结构不仅可捕捉到系统抛出的异常,也可以捕捉到开发者抛出的异常。在ECMAScript 3规范后续的版本中,开发者都可使用throw抛出自定义的异常。在JavaScript脚本中可以使用throw抛出任意异常,包括数字、字符串、布尔值或者对象。,13.6 脚本代码调试,类似于C、C+、Java等高级编程语言,调试也是JavaScript脚本程序开发过程中不可或缺的步骤,是程序能正常发挥作用的重要保证。当程序结果不正确或需查看其中变量的动态变化情况时,开发者就要对代码进行跟踪调试,以定位错误并修正代码。在JavaScript脚本中,对于短小简单的脚本程序,开发者可以用alert或者Java控制台来帮助调试。但对于比较庞大的脚本程序,以上两种方法已经不能满足调试的需求,而只能借助于调试器,本节将介绍两个常用的调试器:Microsoft Script Debugger和Venkman。,13.6.1 使用alert语句跟踪调试,alert调试方法就是在脚本中特定位置插入alert语句,对代码的运行情况进行有目的地跟踪,以定位错误和异常。虽然该方法相对比较笨,但是alert调试是最简单而实用的方法。相信很多编过C程序的读者,在调试C语言程序的时候喜欢用printf()函数打印一些信息,只要printf()函数能成功打印就表明程序能正常运行到此位置(相当一个断点),从而判断错误发生在该语句之后。,13.6.2 使用Java控制台,在支持LiveConnect技术的浏览器中(Microsoft IE不支持)可用Java控制台来协助脚本调试,该方法和alert调试方法类似,区别在于它使用“java.lang.System.out.println()”来代替alert语句。,13.6.3 使用Microsoft Script Debugger调试器,启动Microsoft Script Debugger调试器还可以使用如下方法:若在页面运行过程中出现错误,在弹出的“错误”警告框询问“是否要进行调试”信息时,单击是按钮,启动Microsoft Script Debugger调试器;在JavaScript脚本代码中嵌入debugger命令,当运行至debugger命令处时,浏览器启动Microsoft Script Debugger调试器,13.6.4 使用Venkman调试器,Venkman是Mozilla开发的JavaScript调试器,其名字来源于电影捉鬼者里面主角的名字。作为优秀的JavaScript调试器之一,其强大的调试功能不愧于“捉鬼者”的称号。其版本不断更新,最新的版本为。,13.7 本章小结,本章主要介绍了JavaScript中的错误与异常处理。在阐述进行错误处理的重要性的同时,比较了错误与异常的异同点;带领读者熟悉不同系统、不同浏览器平台的错误报告,并讲述了利用onerror函数和try/catch语句两种错误处理的方法。在程序开发的过程中,调试也是重要环节,本章介绍了利用alert和Java控制台进行调试的小技巧,并着重介绍了两种功能强大的JavaScript调试器:Microsoft Script Debugger以及Venkman。本章力求读者熟悉不同浏览器的错误报告,熟练掌握错误异常处理方法,当遇到错误异常时,可从容地使用调试方法或调试器进行脚本代码调试。下一章将介绍JavaScript与一些常用插件的通信。,

    注意事项

    本文(JavaScript错误与异常处理.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开