RangeError

RangeError 对象标明一个错误,当一个值不在其所允许的范围或者集合中。

语法

new RangeError([message[, fileName[, lineNumber]]])

参数

message
可选,可读的错误描述
fileName
可选,包含造成异常代码的文件名
lineNumber
可选,造成异常的代码所在的行数

描述

试图传递一个number参数给一个范围内不包含该number的函数时则会引发 RangeError 。当传递一个不合法的length值作为 Number.toPrecision() ),会出现 RangeError 。.

属性

RangeError.prototype
允许在 RangeError 对象上附加属性。

方法

RangeError 全局对象没有自带方法,但它通过可以原型链继承一些方法。

RangeError 实例

属性

RangeError.prototype.constructor
Specifies the function that created an instance's prototype.
RangeError.prototype.message
Error message. Although ECMA-262 specifies that RangeError should provide its own message property, in SpiderMonkey, it inherits Error.prototype.message .
RangeError.prototype.name
Error name. Inherited from Error .
RangeError.prototype.fileName
Path to file that raised this error. Inherited from Error .
RangeError.prototype.lineNumber
Line number in file that raised this error. Inherited from Error .
RangeError.prototype.columnNumber
Column number in line that raised this error. Inherited from Error .
RangeError.prototype.stack
Stack trace. Inherited from Error .

方法

Although the RangeError prototype object does not contain any methods of its own, RangeError instances do inherit some methods through the prototype chain.

例子

使用 RangeError

var check = function(num) {
  if (num < MIN || num > MAX) {
    throw new RangeError('Parameter must be between ' + MIN + ' and ' + MAX);
  }
};

try {
  check(500);
}
catch (e) {
  if (e instanceof RangeError) {
    // 处理越界错误
  }
}

上篇: EvalError

下篇: ReferenceError