第章错误处理-公开课件.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 错误处理 在上一章中,对JavaScript的面向对象特征进行了具体的讲解。在面向对象的语言中,都提供了错误处理这一关键性的语法和功能。采用了错误处理机制的JavaScript,能够更好进行开发以及丰富客户体验。 6.1 错误和异常 错误是指程序在运行过程中,遇到的导致不可运行的障碍。异常一般是指运行期错误,或者与预期结果不一致的运行结果。在高级语言中,错误处理至关重要,.NET和Java都内置大量的错误类,以便开发者进行错误处理。本节就将向读者讲解JavaScript中的错误处理。 6.1.1 什么是错误、什么是异常 JavaScript中错误一般有3种:语法错误、逻辑错误、运行时错误。 语法错误,一般是指JavaScript代码中语法不正确,解析器无法正常解析而引发的错误。语法错误很好识别,并非常容易排除。典型的语法错误如下所示。 document.write(hello); 以上代码,由于hello未定义和赋值,所以编译器无法解释,自动停止执行这句以后的代码。但是请注意,由于沙箱安全机制的限制,JavaScript中只有在同1个线程中的代码会受到语法错误的影响。其他线程中的代码和其他外部引用Js文件中的代码,只要没有错误代码就可以继续运行。通常语法错误很容易被发现及排除,所以一般性语法错误本章不进行专门讲述。 6.1.2 异常处理的重要性 在早期的浏览器中,并没有异常处理机制。一般情况下,函数通过返回1个无效的值,来提示开发.者或用户发生了异常。在上一节的异常示例中,可以改写成这样进行异常警告: function Week() { var i=0; var j=15; if(i==0) { return i; } else { return j/i; } } 6.2 错误报告 错误报告是浏览器内置的功能,当JavaScript脚本在前台进行解释执行遇到错误,而没有异常处理时,浏览器发出的错误提示。由于JavaScript在浏览器中实现方式不尽相同,报错方式也五花八门。在本节中,可以对错误报告有1个深入的了解。 6.2.1 在IE中使用错误报告 IE是Windows默认浏览器,IE提供了两种错误报告方式。当客户安装了脚本调试器(Microsoft Script Debugger),IE会采用使用消息框,通知客户选择是否使用调试器的方式报告错误。如图所示。 6.2.2 FireFox中的错误处理 FireFox中内置了JavaScript控制台,不仅仅记录错误,还可以发出警告。访问FireFox的JavaScript控制台,可以在菜单栏下的错误控制台中找到。如图所示。 6.3 处理错误 错误可以通过浏览器支持的错误报告方式得知,但是异常和错误还是需要开发者进行一定的处理。JavaScript有两种错误处理方式,BOM对象的onerror事件处理函数、try….catch…语法结构来处理异常。本节将揭示两种方式的优点、缺点。 6.3.1 onerror事件处理程序 当页面中JavaScript代码出现了错误,就会触发onerror事件。典型的onerror错误处理代码如下所示。 虽然onerror错误处理可以进行错误处理,但是onerror错误处理有着先天缺陷: (1)onerror是BOM对象的一部分,非常依赖浏览器的实现。在IE中,当onerror事件触发时,会继续执行onerror事件处理以后的代码。但在FireFox中,当onerror事件触发时,所有代码都会终止。 (2)onerror仅仅能处理第1个页面代码中出现的第1个异常,而且仅仅能处理onerror事件处理函数代码之后代码中出现的错误。因为出现了多个异常,也只能触发一次onerror事件处理程序。 在JavaScript还有另一种错误处理的方式,请仔细阅读6.3.2节。 6.3.2 try catch 语法结构 try catch 语法结构在大多数面向对象的语言中都得到了实现,JavaScript也支持这个重要的异常处理功能,任何支持ECMAScript第3版的浏览器都支持JavaScript中的try catch 语法。 但是请注意JavaScript中try catch 结构仅仅只有1个catch块,因为JavaScript是弱类型的语言,无法得到错误确切类型,所以所有错误都由1个catch块进行处理。 try { window.noFoundFunction(); } catch(exception) { alert(catch 语句块); } finally { alert(finally 语句块); } 6.4 常用JavaScript调试技巧 在上一节中

文档评论(0)

小红帽 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档