Error对象

Error实例对象是最一般的错误类型,在它的基础上,JavaScript还定义了其他6种错误对象,也就是,存在的6个派生对象。

1.1 SyntaxError对象

SyntaxError对象是解析代码时发生的语法错误。
SyntaxError
上面代码的错误,都是在语法解析阶段就可以发现,所以会抛出SyntaxError。第一个错误提示是"token非法",第二个错误提示

1.2 ReferenceError对象

ReferenceError对象是引用一个不存在的变量发生的错误.
ReferenceError
另一种触发场景是,将一个值分配给无法分配的对象,比如对函数的运行结果或者this赋值。

在这里插入图片描述
在这里插入图片描述

1.3 RangeError对象

RangeError对象是一个值超出有效范围时发生的错误。主要有几种情况,一是数组长度为负数,二是Number对象的方法参数超出范围,以及函数堆栈超过最大值。

// 数组长度不得为负数
new Array(-1)
// Uncaught RangeError: Invalid array length

1.4 TypeError对象

TypeError对象是变量或参数不是预期类型时发生的错误。比如,对字符串,布尔值,数值等原始类型的值使用new命令,就会抛出这种错误,因为new命令的参数应该是一个构造函数。

new 123
// Uncaught TypeError: number is not a func

var obj = {};
obj.unknownMethod()
// Uncaught TypeError: obj.unknownMethod is not a function

上面代码的第二种情况,调用对象不存在的方法,也会抛出TypeError错误,因为obj.unknowMethod的值为undefined,而不是一个函数。

1.5 URIError对象

URIError对象是URI相关函数的参数的不正确时抛出的错误,主要涉及encoceURI(),decodeURI(),encodeURIComponent(),decodeURIComponent(),escape()和unescape()

decodeURI('%2')
// URIError: URI malformed

1.6 EvalError对象

eval函数没有被正确执行时,会抛出EvalError错误,该错误类型已经不再使用了,只是为了保证以前代码兼容,才继续你保留。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值