本文实例总结了javascript编程异常处理的方法。分享给大家供大家参考,具体如下:
前言:在前一篇《asp.net开发中常见公共捕获异常方式总结》,我们整理总结了asp.net服务端的异常处理。这一篇接着前文,简单总结并讨论一下javascript在客户端的异常处理。这样asp.net的服务端和客户端异常处理我们就都有了初步的认识。
1、烦人的脚本错误
楼猪经常装13,但是普遍都没有深度。偶然艰难地看懂了一段英文,终于可以深沉地再装一回:
When browsing Web pages on the internet, we all have seen a JavaScript alert box telling us there is a runtime error and asking "Do you wish to debug?". Error message like this may be useful for developers but not for users. When users see errors, they often leave the Web page.
上面这段话,哼哼,看不懂了吧?nc楼猪优雅且粗暴地理解一下就是,打开一个网页,我们都不时碰到过网页弹出脚步错误并询问“是否要调试?”这种sb问题。烦不烦啊,正常用户经常都会习惯性选择右上红叉,但是这种提示信息可能对开发人员就tmd很有用。由此可见,我kao,开发人员不正常?!看来楼猪理解有误。其实您不难看出,原文要告诉我们的最终意图应该是,网页里出现脚本错误很要命,用户体验不好,白白“吓跑”一批潜在用户。
2、如何处理脚本错误
在js中,我们通常也是通过try...catch 来捕获并处理异常。
try { //Run some code here } catch(e) { //Handle errors here }
在实际代码中,我们可能会这么写:
function test(){ var txt=""; try{ alert(aaa);//aaa是未声明的变量 } catch(e){ txt="There was an error on this page.\n\n"; txt+="Error message: " + e.message + "\n\n"; txt+="Error description: " + e.description + "\n\n"; txt+="Error name: " + e.name + "\n\n"; //alert(txt);//正式平台上可能需要注释掉该行 } }
还有一种比较通用的做法就是,给window对象的onerror事件注册通用处理方法,并将下面的代码置于页面的<head></head>节内:
window.onerror=function(){ return true; }
上面这种方式的好处是页面里写一次,就不会弹出恼人的脚本错误,有点全局处理的意思。对于开发人员,这种写法可能会隐藏潜在的脚本错误而不被发现,所以测试的时候需要注释掉上面的函数。
3、javascript里的Error
(1)、Error对象的常用属性
在我们捕获异常的时候,通常都会在catch处抛出一个Error对象的实例e,e的几个常用属性如下:
属性 说明
description 异常的描述信息
message 异常的描述信息
name 异常类型
number 独有的异常代号
在实际开发中,通常都会提示给开发人员message和name信息,以便有针对性地处理异常。
(2)、Error对象的类型
通过(1)中的name属性我们可以查看到异常类型。在js中,有如下几种常见异常类型:
TypeError : 当遇到一个意外的类型时引发,比如未声明的变量等;
SyntaxError : 在解析js代码时其中的语法错误引发,比如服务端注册脚步,少一个括号或引号等;
ReferenceError : 使用一个无效的引用时引发该异常;
EvalError : 在错误的调用eval函数时引发;
RangeError : 在一个数字型变量的值超出了其范围时引发;
URIError : 错误地使用encodeURI()或decodeURI()函数时引发。
在实际的开发中,针对不同类型的异常作出不同的异常处理,有利于我们有效地发现问题和提高用户体验。
希望本文所述对大家JavaScript程序设计有所帮助。
本文向大家介绍Java异常处理操作实例小结,包括了Java异常处理操作实例小结的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java异常处理操作。分享给大家供大家参考,具体如下: 一 异常处理的使用——能够捕获到异常 1 代码 2 运行 数组超出绑定范围! 这里一定会被执行! main()方法结束! 二 异常处理的使用——不能够捕获到异常 1 代码 2 运行 这里一定会被执行! Exce
主要内容:错误和异常的区别,JS 异常处理,JS try catch finally 语句,JS 抛出错误,JS 错误类型在编程中,有时代码并不会像我们预期的那样运行,会遇到各式各样的错误,例如代码中使用了错误的符号、调用未定义的方法、网络错误、读取不存在的文件、没有操作权限等。 根据类型的不同,JavaScript 编程中的错误大致可以分为以下三种类型: 语法错误:也称为解析错误,一般是因为代码存在某些语法错误引起的。当发生语法错误时,代码会停止运行; 运行时错误:也称为异常,发生在程序运行期
本文向大家介绍Java异常处理实例分析,包括了Java异常处理实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java异常处理的用法。分享给大家供大家参考。具体分析如下: Java的异常处理机制可以帮助我们避开或者处理程序可能发生的错误,从而使得程序在遇到一些可恢复的错误的时候不会意外终止,而是去处理这些错误,也使得我们在写程序的时候不必写大量的代码来检查错误情况,增强了代码的可读
本文向大家介绍JavaScript 异常处理 详解,包括了JavaScript 异常处理 详解的使用技巧和注意事项,需要的朋友参考一下 前端工程师都知道 JavaScript 有基本的异常处理能力。我们可以 throw new Error(),浏览器也会在我们调用 API 出错时抛出异常。但估计绝大多数前端工程师都没考虑过收集这些异常信息 反正只要 JavaScript 出错后刷新不复现,那用
主要内容:前记,1.processHandlerException方法前记 根据之前的文章方法中的方法返回处理的方法 1.processHandlerException方法 这个方法就是如果出现异常的话, 异常解析器进行处理异常。 先判断是否是注解下的方法, 如果是的话另外处理 -> 判断是否是注解下的方法 这里的主要有3个实现类 1.1注解下的异常 1.2注解下的方法 获取到装填码 获取到出错理由 然后渲染异常的页面 返回空的ModelAndView 1.3解析方
本文向大家介绍C#异常处理总结及简单实例,包括了C#异常处理总结及简单实例的使用技巧和注意事项,需要的朋友参考一下 C#异常处理总结及简单实例 一、异常处理的理解? 异常处理是指程序在运行过程中,发生错误会导致程序退出,这种错误,就叫做异常。 因此处理这种错误,就称为异常处理。 二、异常处理如何操作? C# 异常处理时建立在四个关键词之上的:try、catch、finally 和 throw。 1