• js 捕获异常之 try ... catch...


    try...catch 语句是什么?

    try...catch 可以测试代码中的错误。try 部分包含需要运行的代码,而 catch 部分包含错误发生时运行的代码。

    try...catch语法:

    try {
        //在此运行代码
    }
    catch(err){
        //在此处理错误
    }
    
    运行流程:
    try{...}包含块中的代码有错误,则运行catch(err){...}内的代码,
    否则不运行catch(err){...}内的代码。
    

      try...catch案例

    var array = null;
    try {
      document.write(array[0]);
    } catch(err) {
      document.writeln("Error name: " + err.name + "");
      document.writeln("Error message: " + err.message);
    }
    

      

    try...catch...finally 语句

    提供了一种方法来处理可能发生在给定代码块中的某些或全部错误,同时仍保持代码的运行。如果发生了程序员没有处理的错误,JS只给用户提供它的普通错误信息,就好象没有错误处理一样。

    finally :无论结果如何,都会执行这里面的语句

    try...catch...finally 语法:

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

      

    try...catch...finally 案例
    var array = null;
    try {
      document.write(array[0]);
    } catch(err) {
      document.writeln("Error name: " + err.name + "");
      document.writeln("Error message: " + err.message);
    }
    finally{
      alert("object is null");
    }
    
    程序执行过程
    1. array[0]的时候由于没有创建array数组,array是个空对象,程序中调用array[0]就会产生object is null的异常 
    2. catch(err)语句捕获到这个异常通过err.name打印了错误类型,err.message打印了错误的详细信息. 
    3. finally类似于java的finally,无论有无异常都会执行.
    

      

  • 相关阅读:
    树莓派也跑Docker和.NET Core
    使用iSCSI协议挂载网络磁盘,电脑瞬间扩大一个T的容量!
    Azure DevOps Server (TFS)免费吗?
    明确架构目标
    MMN实用架构过程概览
    设计恰如其分的架构
    对象的自治和行为的扩展与适配
    Message Chains与Fluent Interface
    如何减少代码的量
    《软件框架设计的艺术》书评
  • 原文地址:https://www.cnblogs.com/wangqi2019/p/12097038.html
Copyright © 2020-2023  润新知