try{ } catch(e){ } finally{ }
1.try里面发生错误 不会抛出错误 单也不会执行错误后的try里面的代码 但也不终止 后续的代码执行
try{
console.log('a');
console.log(b);//会报错,不执行,不抛出错误,不终止后续代码执行
console.log('c');//正确,不执行
}catch(e) {
}
console.log('d');//仍然执行
输出 a b
2.try中代码无错误时 catch不会被执行 try中一但出现错误 直接跳转catch执行 : catch作用是吧把错误捕获捉到 错误有一堆错误信息 系统会把错误信息封装到error对象里面 然后传给e使用
try{
console.log('a');
console.log(b);
console.log('c');
}catch(e) {//error error.message error.name --> error
console.log(e);//一般直接打印e,里面有错误信息及错误名称
}
console.log('d');
3.catch负责捕捉错误到程序里 就不会抛出到控制台 就不会终止代码执行 try..catch为了 容错 捕捉错误 提高平错误信息
Error.name的六种值对应的信息:
- EvalError: eval()的使用与定义不一致
- RangeError: 数值越界
- ReferenceError: 非法或不能识别的引用数值
eg:函数未被定义直接调用 - SyntaxError:发生语法解析错误
eg:出现中文冒号: - TypeError:操作数类型错误
- URIError: URI处理函数使用不当