JS常见错误(Error)及处理方案详解
1.错误的类型
Error:所有错误的父类型
错误的子类型包括:
- ReferenceError:引用的变量不存在
- TypeError:数据类型不正确的错误
- RangeError:数据值不在其所允许的范围内
- SyntaxError:语法错误
常见的内置错误:
(1)ReferenceError:引用变量不存在
console.log(a)//ReferenceError:aisnotdefined
(2)TypeError:数据类型不正确
varb={}
b.xxx()//TypeError:b.xxxisnotafunction
(3)RangeError:数据值不在其所允许的范围内
functionfn(){ fn() } fn()//RangeError:Maximumcallstacksizeexceeded
(4)SyntaxError:语法错误
constc=""""//SyntaxError:Unexpectedstring
2.错误处理
捕获错误:try...catch
抛出错误:throwerror
(1)捕获错误
try{ letd console.log(d.xxx) }catch(error){//可以通过调试查看error对象的属性(message属性: 错误相关信息;stack属性: 函数调用栈记录信息) console.log(error.message) //console.log(error.stack) } //可以继续向下执行 console.log('出错之后')
(2)抛出错误
functionsomething(){ if(Date.now()%2===1){ console.log('当前时间为奇数,可执行任务') }else{ thrownewError('当前时间为偶数无法执行任务') } } //情况1直接调用 something()//Error:当前时间为偶数无法执行任务 console.log('something之后')//不会继续这句代码(没有对异常进行处理) //情况2捕获处理异常 try{ something() }catch(error){ console.log(error.message) }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。