try…catch的作用:容纳、捕获错误
我们都知道当程序的一行代码出问题,系统就会向控制台抛出错误,后面的代码也会因此无法执行
console.log('a')
console.log(b)
console.log('c')//不执行
为了解决这一问题,我们可以使用try…catch结构
try…catch结构中,try代码块用于容错,允许在try代码块中出现错误代码,不会执行错误代码后的try里面的代码,不会向控制台抛出异常,异常会由catch结构捕获,也不影响try…catch结构后代码的正常执行
try{
console.log('a')
console.log(b)//出错代码
console.log('c')//不执行
}catch(e){
}
console.log('d')//可执行
catch代码块用于捕获异常,只有在try代码块中出现错误代码时才会执行catch里的代码,参数是系统返回的一个error对象,封装着错误类型/名称error.name、错误信息error.message,允许对error对象进行操作
try{
console.log('a')
console.log(b)//出错代码
console.log('c')
}catch(e){
console.log(e.name+':'+e.message)
}
console.log('d')
错误的六种类型
-
EvalError:eval()的使用与定义不一致
-
RangeError:数值越界
-
ReferenceError(常见):非法或不能识别的引用数值
console.log(d)
var a = kk
-
SyntaxError(常见):发生语法解析错误
var fun = function(){ var a ;//中文分号 }
-
TypeError:操作数类型错误
-
URLError:URL处理函数使用不当