`
deng131
  • 浏览: 662863 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JavaScript中try catch finally 使用

阅读更多
在IE泄漏中处理是遇到的方法,通过try..catch..finally方式:
function createButton(){
 var obj = document.createElement("button");
 obj.innerHTML="点我!";
 obj.onclick=function(){
   //处理click事件
 }
 obj.onmouseover=function(){
   //处理mouseover事件
 }
try{
  return obj;
 }finally{
   obj = null;//在return 之后才执行,解决了在return后将obj置null问题
 }
} 


错误处理结构:  
   try{   
       tryStatements
   }   
   catch(exception){   
       catchStatements}   
   finally{   
       finallyStatements
   }   

参数:  
   tryStatement    
   必选项。可能发生错误的语句。    
   exception    
   必选项。任何变量名。exception的初始化值是扔出的错误的值。    
   catchStatement    
   可选项。处理在相关联tryStatement中发生的错误的语句。    
   finallyStatements    
   可选项。在所有其他过程发生之后无条件执行的语句。    

说明:     
如果在tryStatements中发生了一个错误,则程序控制被传给catchStatements来处理 ,错误处理发生之后,将会执行finallyStatements中语句。

(function(){
    try{
       console.info('1');
       return 'try begin'   //1
    }catch(e){
       console.info('2');
       return 'try catch'   //2 
    }finally{
       console.info('3');
       return 'try finally' //3
    }
})();

执行上述代码,发现在1返回return前将会执行到finally,如果其中有return那么函数执行返回,否则执行到1处return返回。如果注释掉3将会返回什么呐?

catch中e.name错误类型:
  • 1. EvalError:eval()的使用与定义不一致
  • 2. RangeError:数值越界
  • 3. ReferenceError:非法或不能识别的引用数值
  • 4. SyntaxError:发生语法解析错误
  • 5. TypeError:操作数类型错误
  • 6. URIError:URI处理函数使用不当

参考:
http://xiaolele.iteye.com/blog/679567
http://www.welefen.com/javascript-try-finally.html
http://www.cnblogs.com/silence516/archive/2009/02/20/1394651.html
分享到:
评论

相关推荐

    理解javascript中try...catch...finally

    主要帮助大家理解javascript中try...catch...finally,从浅入深,一步步掌握javascript中try...catch...finally的使用方法,感兴趣的小伙伴们可以参考一下

    理解javascript中try…catch…finally

    本文为大家分析了javascript中try…catch…finally的使用方法,分享给大家供大家参考,具体内容如下 稍微复杂一点点,就要用到判断语句,if else进行条件判断,话说if条件else否则,这样的判断对于写程序代码的码侬...

    try-catch-finally.js:一个很小的库,用于在JavaScript中更灵活地捕获错误

    try-catch-finally.js 843字节库,可在JavaScript中更灵活地捕获错误。内容注意事项按名称捕获可能不起作用按类型捕获在跨框架/过程中不起作用错误被消耗测验 安装 浏览器< script src =" try-catch-finally.js ...

    JavaScript语句错误throw、try及catch实例解析

    finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行。 JavaScript 抛出(throw)错误 当错误发生时,当事情出问题时,JavaScript 引擎通常会停止,并生成一个错误消息。 描述这种情况的技术...

    no-try:通过删除try-catch-finally块来清理代码! :rocket:

    :rocket: 不试 :rocket: 删除那些难看的try-catch-finally块,清理代码库! :smiling_face_with_heart-eyes: 关于在可能期望方法throw的代码库中工作可能会导致逻辑包裹在try-catch块中的情况。 它还导致其他代码...

    JavaScript 错误 – throw、try 和 catch

    finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行。  JavaScript 错误 当 JavaScript 引擎执行 JavaScript 代码时,会发生各种错误。 可能是语法错误,通常是程序员造成的编码错误或错...

    JavaScript完全自学宝典 源代码

    4.5.html try-catch-finally语句执行流程。 第5章(\c05) 示例描述:介绍JavaScript文档对象模型。 5.1.html 使用DOM获取各级别节点。 5.2.html 使用DOM获取body元素。 5.3.html 获取元素的子节点...

    javascript 异常处理使用总结

    JavaScript中的异常可以用try..catch..finally语句来处理,也可以手动的来抛出异常。 1.使用try..catch..finally语句来处理异常 js代码在执行过程中如果出现异常,会手动创建一个异常类对象,该异常类对象将被提交给...

    Arguments.html

    JavaScript 中 try/catch/finally的断言的用法,以及代码示例的尝试。 资源中包含了基本的使用方法,以及添加函数断言的内容。

    JS错误处理与调试操作实例分析

    finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行。 JavaScript try 和 catch try 语句允许我们定义在执行时进行错误测试的代码块。 catch 语句允许我们定义当 try 代码块发生错误时,所...

    javascript中异常处理案例(推荐)

    如下所示: <!...<... <head>...meta charset="UTF-8">... // try-catch-finally // 1 如果try中的代码出现了异常, 就会被... // 最终,会执行finally中的代码 // 2 如果try中大代码没有出现异常, catch内部的代码

    浅谈JavaScript异常处理语句

    包含try-catch、try-catch-finally和throw. try-catch语句 try{ tryStatements } catch(exception){ catchStatements } 参数说明: tryStatements:必选项。可能发生错误的语句序列。 exception:必选项。任何变量...

    浅析javascript中函数声明和函数表达式的区别

    以函数声明的方法定义的函数并不是真正的声明,它们仅仅可以出现在全局中,或者嵌套在其他的函数中,但是它们不能出现在循环,条件或者try/catch/finally中,而  函数表达式可以在任何地方声明. 下面分别用两种方法定义...

    JavaScript权威指南

    try/catch/finally Section 6.18. with Section 6.19. The Empty Statement Section 6.20. Summary of JavaScript Statements Chapter 7. Functions Section 7.1. Defining and Invoking Functions ...

    JavaScript中的异常捕捉介绍

    主要介绍了JavaScript中的异常捕捉介绍,本文讲解了throw语句抛出异常,try/catch/finally语句捕捉异常,需要的朋友可以参考下

    AST反混淆js还原工具2.3(20231219)

    03 try-catch优化为try-catch-finally简化 04 辅助功能-return简写表达式还原,便于阅读理解 05 新增:大数组多解密函数(需要先自行排版,大数组-偏移函数-解密函数1-解密函数2-解密函数3) 06 修复bug-未修改常量...

    JavaScript性能陷阱小结(附实例说明)

    不要在性能要求关键的函数中使用try-catch-finally 4.避免使用全局变量 5.避免在性能要求关键的函数中使用for-in 6.使用字符串累加计算风格 7.原操作会比函数调用快 8.设置setTimeout() 和 setInterval() 时传递函数...

    BBS网站代码,jsp,java,javaScript,HTNL语言

    BBS网站,我对它使用到了JSP,java,HTML,javaScript等技术,相信它是学习JSP的一个好东西 public interface IReplyDao { /** * 根据主题id,查找回复的信息 * @param replyId * @return 回复 */ public Reply ...

    浅谈javascript 函数表达式和函数声明的区别

    以函数声明的方法定义的函数并不是真正的声明,它们仅仅可以出现在全局中,或者嵌套在其他的函数中,但是它们不能出现在循环,条件或者try/catch/finally中,而  函数表达式可以在任何地方声明. 下面分别用两种方法定义...

Global site tag (gtag.js) - Google Analytics