1.Error: 尝试去访问(由于同源策略而导致)无权访问的对象的时候抛出;
这很可能出现在使用 iframe 元素时加载了一个不同域名下的页面
2.InternalError: 内部错误,由于递归次数过于庞大而抛出的错误;
将递归条件设置为一个极大的数值,将不能运行:
function loop(x) {
if (x >= 1000000000000)
return;
// 进行一些操作...
loop(x + 1);
}
loop(0);
// InternalError: too much recursion
3.RangeError : 范围错误;
超出有效范围
var a= new Array(-1);
Uncaught RangeError: Invalid array length
4.ReferenceError: 引用错误;
a.引用了一个不存在的变量
console.log(a);
Uncaught ReferenceError: a is not defined
b.将变量赋值给一个无法被赋值的对象
console.log()= 1;
Uncaught ReferenceError: Invalid left-hand side in assignment
5.SyntaxError: 语法错误;
解析代码时,发现存在语法错误就抛出这个错误
var 1a;
Uncaught SyntaxError: Unexpected number
6.TypeError: 类型错误;
a.变量或参数不是预期类型,比如,对字符串、布尔值、数值等原始类型的值使用new命令,就会抛出这种错误,因为new命令的参数应该是一个构造函数。
var a= new 123;
Uncaught TypeError: 123 is not a function
b.调用对象不存在的方法
var a;a.aa();
Uncaught TypeError: Cannot read property 'aa' of undefined
7.URIError: URL错误, URI 编码和解码不成功;
与url相关函数参数不正确,主要是encodeURI( )、decodeURI( )、encodeURIComponent ( )、decodeURIComponent( )、escape()和unescape( )这六个函数。
decodeURI('%2')
Uncaught URIError: URI malformed
8.EvalError(eval错误)
eval函数没有被正确执行
9.Warning: 警告,虽然现在代码不影响运行,但是存在隐患就会抛出的错误;