常见错误类型
- SyntaxError解析错误
- ReferenceError引用错误
- RangeError范围错误
- TypeError类型错误
- URIError统一资源标识符函数错误
- EvalError eval()函数执行错误
- InternalError内部错误
SyntaxError解析错误
代表尝试解析语法上不合法的代码的错误
描述:这个报错是由于我们的语法规则书写不正确造成的,比如变量命名不规范,函数书写不正确等。
1 | //变量不能以数字开头 |
ReferenceError引用错误
表明一个不存在的变量被引用
描述:当你尝试引用一个未被定义的变量时,将会抛出一个 ReferenceError
1 | var a = 100; |
RangeError范围错误
当一个值不在其所允许的范围或者集合中
描述:当试图传递一个不合法的数字到数组的构造函数时,或者是传递一个number参数给一个范围内不包含该number的函数时,都会引发RangeError
1 | //这里传递一个不合法的负数,当做数组的长度,会报错RangeError |
TypeError类型错误
用来表示值的类型非预期类型时发生的错误
描述:当传入函数的操作数或参数的类型并非操作符或函数所预期的类型时,将抛出一个 TypeError 类型错误
1 | var a = 100; |
URIError统一资源标识符函数错误
用来表示以一种错误的方式使用全局URI处理函数而产生的错误
描述:当向全局URI处理函数传递一个错误的URI时,一个URIError错误会被抛出。
涉及的函数有:encodeURI()、decodeURI()、encodeURIComponent()、decodeURIComponent()、escape()和unescape()
EvalError eval()函数执行错误
代表了一个关于evel函数的错误.此异常不再会被JavaScript抛出,但是EvalError对象仍然保持兼容性.
描述:该错误类型已经在ES5中不使用了,只是为了保证与以前代码兼容,才继续保留。
InternalError内部错误
表示出现在JavaScript引擎内部的错误。 例如: “InternalError: too much recursion”(内部错误:递归过深)
描述:非标准特性,请尽量不要在开发环境中使用它!