前端学习(五十) JavaScript-ERROR(javaScript)

Error

也就是程序中抛出的错误

创建Error

new Error(message)

  • 创建一个Error对象,运行时抛出
  • 参数:message代表错误信息
  • 返回值是Error实例

抛出/捕获Error

try{
    a
}
catch (e){
    console.log("a未定义")
}

Error属性

Error.prototype.name

指的的是Error的名称,默认值就是Error

Error.prototype.message

指的是错误信息,默认值是empty(空字符串)

try {
    throw new Error("undefined123")
}
catch(e) {
    console.log(e.name);   //Error
    console.log(e.message)   //undefined123
}

内建Error类型(我的理解是就是系统自带的)

EvalEror:错误原因跟eval函数使用有关,老版本使用

RangeError:值超出了有效范围,例如,数组的长度超出了范围

ReferenceError:无效引用,例如,引用了一个没有定义的变量

SyntaxError:语法解析错误,例如,语法不符合规则

TypeError:值或参数的类型与预期不符,例如,字符串.一个test()方法,实际上字符串是没有test方法的,所以报错

URIError:未按定义的方法去使用操作URI的方法,包括编码和解码

自定义Error

function CustomError(message) {
    this.name="CustomError";
    this.message=message||"Unexpected error"
    this.stack=(new  Error()).stack;
}
CustomError.prototype=Object.create(Error.prototype);
CustomError.prototype.constructor=CustomError;

try {
    throw new CustomError("自定义错误")
}
catch (e){
    console.log(e.name);
    console.log(e.message)
}

猜你喜欢

转载自blog.csdn.net/zy21131437/article/details/81223716