Javascript中的Error 对象

JavaScript 拥有当错误发生时提供错误信息的内置 error 对象。error 对象提供两个有用的属性:namemessage

Error 对象属性

属性描述
name设置或返回错误名
message设置或返回错误消息(一条字符串)

Error对象的Name属性的值Values

error 的 name 属性可返回六个不同的值:

错误名描述
EvalError已在 eval() 函数中发生的错误
RangeError已发生超出数字范围的错误
ReferenceError已发生非法引用
SyntaxError已发生语法错误
TypeError已发生类型错误
URIError在 encodeURI() 中已发生的错误

Eval 错误

EvalError 指示 eval() 函数中的错误。
更新版本的 JavaScript 不会抛出任何 EvalError。请使用 SyntaxError 代替。

范围错误

RangeError 会在您使用了合法值的范围之外的数字时抛出。
例如:您不能将数字的有效位数设置为 500。
实例:

var num = 1;
try {
    num.toPrecision(500);   // 数无法拥有 500 个有效数
 }
catch(err) {
    document.getElementById("demo").innerHTML = err.name;
} 

引用错误

假如您使用(引用)了尚未声明的变量,则 ReferenceError 会被抛出:
实例:

var x;
try {
    x = y + 1;   // y 无法被引用(使用)
 }
catch(err) {
    document.getElementById("demo").innerHTML = err.name;
} 

语法错误

假如您计算带语法错误的代码,会 SyntaxError 被抛出:
实例:

try {
    eval("alert('Hello)");   // 缺少 ' 会产生错误
}
catch(err) {
     document.getElementById("demo").innerHTML = err.name;
} 

类型错误

假如您使用的值不在期望值的范围之内,则 TypeError 被抛出:
实例:

var num = 1;
try {
    num.toUpperCase();   // 您无法将数字转换为大写
 }
catch(err) {
    document.getElementById("demo").innerHTML = err.name;
} 

URI 错误

假如您在 URI 函数中使用非法字符,则 URIError 被抛出:
实例:

try {
    decodeURI("%%%");   // 您无法对这些百分号进行 URI 编码
 }
catch(err) {
    document.getElementById("demo").innerHTML = err.name;
} 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值