zoukankan      html  css  js  c++  java
  • 几个例子理解js里面try、catch、finally的执行规则

      try:  语句测试代码块的错误,一般把可能会出错的代码放到这里
      catch: 只有try里面的代码块发生错误时,才会执行这里的代码,参数err记录着try里面代码的错误信息
      finally: 无论有无异常里面代码都会执行

      

     1   try{
     2         console.log(0);
     3     }catch (err){
     4         console.log(1);
     5         console.log(hello);
     6     }finally {
     7         console.log(2);
     8     }
     9     //最后结果分别打印出   0  2
    10     
    11     
    12     /*
    13     try{
    14         a.b.c();
    15     }catch (e){
    16         console.log(1);
    17         console.log(hello);
    18     }finally {
    19         console.log(2);
    20     }
    21     */
    22     //最后结果分别打印出   1  2   报错:hello is not defined
    23     
    24     
    25     
    26     /*
    27     try{
    28         a.b.c();
    29     }catch (e){
    30         console.log(1);
    31         try{
    32             console.log(hello);
    33         }catch (e){
    34             console.log(3);
    35         }
    36     }finally {
    37         console.log(2);
    38         console.log(word);
    39     } 
    40     */
    41     //最后结果分别打印出   1  3  2   报错:word is not defined
    42     
    43     
    44     
    45     /*
    46     try{
    47         a.b.c();
    48     }catch (e){
    49         console.log(1);
    50         console.log(hello);
    51     }finally {
    52         console.log(2);
    53         console.log(word);
    54     }*/
    55     //最后结果分别打印出   1   2   报错:word is not defined

      总结:
      try里面的代码报错的时候,catch里面的代码才会执行,finally里面的代码永远会执行
      catch和finally里面,正常的代码会从上到下顺序执行
      如果只是catch里面代码出错,则报catch里面的错误
      如果catch和finally都出错则会报finally里面的错误

  • 相关阅读:
    策略模式(Strategy Pattern)
    责任链模式(Chain of Responsibility Pattern)
    单例模式(Singleton Pattern)
    观察者模式(Observer Pattern)
    iOS常用工具类
    iOS常用的封装方法
    iOS中书写代码规范
    UITableViewCell中的使用cell和cell.contentView的区别
    colorWithAlphaComponent
    iOS 压缩图片
  • 原文地址:https://www.cnblogs.com/lc5910/p/6438074.html
Copyright © 2011-2022 走看看