定义:

try/catch 语句用于处理代码中可能出现的错误信息,出现异常会导致程序崩溃,而try/catch 则可以保证程序的正常运行。

try {
//执行代码 不报错则 正常执行 不会进入下面的catch 
} catch(err){ //当上面的代码出错时 这里可以捕获到错误信息 
 console.error(err) }

多重捕获:

一个 try 代码块后面跟随多个catch代码块的情况

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

如果 try 代码块中发生异常,异常被抛给第一个 catch 块。
如果抛出异常的数据类型与 ExceptionType1 匹配,它在这里就会被捕获。
如果不匹配,它会被传递给第二个 catch 块。
如此,直到异常被捕获或者通过所有的 catch 块。

//多重捕获
try { 
  //尝试执行的代码块 
} catch (异常类型1 异常的变量名1) {
  //捕获错误的代码块1 
} ... catch (异常类型2 异常的变量名2) {
  //捕获错误的代码块2 
} finally {
  //最终执行的代码块
}

简单运用:

判断输入的字符串是否为JSON格式

function except(str) {
            console.log(typeof str)   //查看传入的数据是什么类型
            try {
                JSON.parse(str)
                console.log('json')
                return true
            }catch(err){
                console.log('not json')
                return false
            }
        };
        // var strs = '{"name":"Runoob"}';   //json
        // var strs = '123'                 // json
        // var strs = null                 // json
        // var strs = true                // json
        // var strs = {"name":"Runoob"};    //not json
        // var strs = '123abc'             //not json
        // var strs = []                  //not json
        // var strs = {}                 //not json
console.log(except(strs))

注意:number、null、Boolean、object都是可以被JSON.parse() 解析的,所以具体的场景要具体分析;这里主要的体现try/catch的用法

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄