js错误处理和调试

1、重点关注函数和可能导致函数执行失败的因素。

2、抛出错误和使用try-catch的时机:一般来说在应用程序架构较低的层次中经常会抛出错误。这个层次并不会影响当前执行的代码。

错误也得不到真正的处理。在多应用中使用的库和应用内部多处使用的辅助函数时,抛出错误后要提供详尽的错误信息。

3、只捕获确切知道该如何处理的错误。捕获错误的目的在于避免浏览器采用默认的方式处理它们。抛出错误的目的在于提供发生错误具体原因的消息。

4、常见的错误类型:类型转换错误、数据类型错误 和 通信错误。

a.类型转换错误常见情形:

在使用相等(==)和
不相等(!==)操作符,或者在if、or 和 while等流程控制语句中使用非布尔值时,最常发生类型装换错误。

alert(5 == "5")  ;      //true
alert(5 ==="5") ; //false
alert(1 == true) ; //true
alert(1 === true) ; //false

js错误处理和调试

时间: 2024-10-15 14:15:30

js错误处理和调试的相关文章

js错误处理与调试理论和办法 (转)

js错误处理与调试理论和办法 ECMA-262 第 3 版引入了 try-catch 语句,作为 JavaScript 中处理异常的一种标准方式.基本的语法如下所示,显而易见,这与 Java 中的 try-catch 语句是完全相同的.try{// 可能会导致错误的代码} catch(error){// 在错误发生时怎么处理}也就是说, 我们应该把所有可能会抛出错误的代码都放在 try 语句块中, 而把那些用于错误处理的代码放在 catch 块中.例如:try {window.someNonex

JS 错误处理与调试

在程序开发中难免会遇到一些错误,在成千上万的代码中去寻找错误很明显相当于大海捞针,为此,每种计算机编程语言都要它独特的一套错误处理与调试机制.当然,JavaScript也不例外. 发生错误: 执行代码时发生的错误有很多.每种错误都有对应的错误类型.ECMA-262定义了7种错误类型: 1.Error 错误 2.EvalError 全局错误 3.RangeError 引用错误 4.ReferenceError 参数错误 5.SyntaxError 语法错误 6.TypeError 类型错误 7.U

js错误处理与调试理论和办法

阅读本文,以抓取有用的信息(可以以我加粗为参考)为主,老外写的 废话较多 ECMA-262 第 3 版引入了 try-catch 语句,作为 JavaScript 中处理异常的一种标准方式.基本的语 法如下所示,显而易见,这与 Java 中的 try-catch 语句是完全相同的. try{ // 可能会导致错误的代码 } catch(error){ // 在错误发生时怎么处理 } 也就是说, 我们应该把所有可能会抛出错误的代码都放在 try 语句块中, 而把那些用于错误处理的 代码放在 cat

js正则表达式、错误处理与调试

正则表达式(英语:Regular Expression,在代码中常简写为regex.regexp或RE)使用单个字符串来描述.匹配一系列符合某个句法规则的字符串搜索模式. 语法: /pattern/modifiers; pattern代表模式(表达式,元字符,量词).例如:[abc],[0-9],\d,\s,\b,\uxxxx,n+,n*,n?. modifiers是修饰符.i代表对大小写不敏感:g代表执行全局匹配:m执行多行匹配. 正则表达式通常用于两个字符串方法 : search() 和 r

IE6,IE7,IE8下报JS错误:expected identifier, string or number的原因及解决的方法

今天在调试一个页面的时候遇到一个问题,在IE9下执行得非常好的脚本,在IE8里打开的时候弹出错误:expected identifier, string or number,依照经验,应该是定义对象的时候最后一个属性末尾跟了逗号,但检查一遍后没发现有这样的情况,后来细致看了一下报错的位置,发现有定义json对象属性时,属性名没实用引號括起来,于是加了上去再试,问题攻克了. 综上所述,当出现expected identifier, string or number的错误时,你首先应该检查在使用对象

第 28 章 错误处理与调试

JavaScript 在错误处理调试上一直是它的软肋,如果脚本出错,给出的提示经常也让人 摸不着头脑. ECMAScript 第 3 版为了解决这个问题引入了 try...catch 和 throw 语句以及一些 错误类型,让开发人员更加适时的处理错误. 一.浏览器错误报告 随着浏览器的不断升级,JavaScript 代码的调试能力也逐渐变强.IE.Firefox.Safari. Chrome 和 Opera 等浏览器,都具备报告 JavaScript 错误的机制.只不过,浏览器一般面向 的是普

easyui datagrid 出现length的js错误

经常看到有datagrid控件的页面出现length的js错误[ 'length' 为空或不是对象],查找半天又找不到原因,使劲的在看是不是datagrid的js配置有问题,结果发现改死了也没用. 删掉datagrid的初始化js,后果然不出现这个js问题了,问题集中在datagrid中, 于是乎,打开js调试 看到 var _717=["<table class=\"datagrid-btable\" cellspacing=\"0\" cellp

IE6,IE7,IE8下报JS错误:expected identifier, string or number的原因及解决办法

今天在调试一个页面的时候遇到一个问题,在IE9下运行得很好的脚本,在IE8里打开的时候弹出错误:expected identifier, string or number,按照经验,应该是定义对象的时候最后一个属性末尾跟了逗号,但检查一遍后没发现有这种情况,后来仔细看了一下报错的位置,发现有定义json对象属性时,属性名没有用引号括起来,于是加了上去再试,问题解决了. 综上所述,当出现expected identifier, string or number的错误时,你首先应该检查在使用对象字面

JS 错误

突然发现自己写了一段多么可笑的代码 <script type="text/javascript"> var boo = false; function docheck(){ var data_un = document.getElementById("un").value; var data_ps = document.getElementById("ps").value; var reg = /^\s*$/; var num = 0