在线文档教程
JavaScript
错误 | Errors

RangeError

RangeError

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

语法

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

参数

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

描述

试图传递一个number参数给一个范围内不包含该number的函数时则会引发RangeError。当传递一个不合法的length值作为Array构造器的参数创建数组,或者传递错误值到数值计算方法(Number.toExponential()Number.toFixed()Number.toPrecision()),会出现RangeError

属性

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

方法

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

RangeError实例

属性

RangeError.prototype.constructorSpecifies the function that created an instance's prototype.

方法

尽管RangeError原型对象本身不包含任何方法,但RangeError实例通过原型链继承了一些方法。

示例

使用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) { // Handle range error } }

规范

SpecificationStatusComment
ECMAScript 3rd Edition (ECMA-262)StandardInitial definition.
ECMAScript 5.1 (ECMA-262)The definition of 'RangeError' in that specification.Standard
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'RangeError' in that specification.Standard
ECMAScript Latest Draft (ECMA-262)The definition of 'RangeError' in that specification.Living Standard

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)