ReferenceError
ReferenceError 对象代表当一个不存在的变量被引用时发生的错误,引用错误。
当你尝试引用一个未被定义的变量时,将会抛出一个 ReferenceError
SyntaxError
SyntaxError 对象代表尝试解析语法上不合法的代码的错误。
当Javascript语言解析代码时,Javascript引擎发现了不符合语法规范的tokens或token顺序时抛出SyntaxError.
TypeError
TypeError 对象用来表示值的类型非预期类型时发生的错误,类型错误。
当传入函数的操作数或参数的类型并非操作符或函数所预期的类型时,将抛出一个 TypeError 类型错误。
InternalError
InternalError 对象表示出现在JavaScript引擎内部的错误。 例如: "InternalError: too much recursion"(内部错误:递归过深)。
RangeError
RangeError 对象标明一个错误,当一个值不在其所允许的范围或者集合中。
试图传递一个number参数给一个范围内不包含该number的函数时则会引发RangeError。当传递一个不合法的length值作为Array 构造器的参数创建数组,或者传递错误值到数值计算方法(Number.toExponential(),Number.toFixed() ,Number.toPrecision()),会出现RangeError。