1. SyntaxError
- SyntaxError(语法错误)JavaScript 引擎发现了不符合语法规范的 tokens 或 token 顺序时抛出SyntaxError.
let a b = 1
Uncaught SyntaxError: Unexpected identifier
2. typeError
- TypeError(类型错误) 对象用来表示值的类型非预期类型时发生的错误。
let a = 1
a()
Uncaught TypeError: a is not a function
3. ReferenceError
- ReferenceError(引用错误)对象代表当一个不存在(或尚未初始化)的变量被引用时发生的错误。
let a = b
Uncaught ReferenceError: b is not defined
4. RangeError
- RangeError 对象标明一个错误,当一个值不在其所允许的范围或者集合中
new Array(9999999999)
Uncaught RangeError: Invalid array length
5. URIError
- 当向全局 URI 处理函数传递一个不合法的 URI 时,URIError 错误会被抛出。
decodeURI('%2')
Uncaught URIError: URI malformed at decodeURI (<anonymous>)
encodeURI('12 34') // '12%2034'
decodeURI( '12%2034') // '12 34'
6. EvalError
- 本对象代表了一个关于 eval 函数的错误。此异常不再会被 JavaScript 抛出,但是 EvalError 对象仍然保持兼容性。