Movatterモバイル変換


[0]ホーム

URL:


  1. 面向开发者的 Web 技术
  2. JavaScript
  3. JavaScript 参考
  4. JavaScript 标准内置对象
  5. RangeError

此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in EnglishAlways switch to English

RangeError

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

* Some parts of this feature may have varying levels of support.

RangeError 对象表示一个特定值不在所允许的范围或者集合中的错误。

描述

试图将一个值作为参数传递给一个允许的范围不包含该值的函数会引发RangeError

在以下的情况中,可能会遇到这个问题:

RangeError 是一个可序列化对象,所以可以使用structuredClone() 对它进行克隆,也可以使用postMessage()Worker 之间拷贝它。

构造函数

RangeError()

创建一个新的RangeError 对象。

实例属性

Error.prototype.message

错误消息。继承自Error

Error.prototype.name

错误名称。继承自Error

Error.prototype.cause

表示导致当前错误被抛出的原因。继承自Error

Error.prototype.fileName非标准

引发此错误的文件的路径。继承自Error

Error.prototype.lineNumber非标准

引发此错误的代码所在的文件的行号。继承自Error

Error.prototype.columnNumber非标准

引发此错误的代码在文件中所在行的列号。继承自Error

Error.prototype.stack非标准

堆栈跟踪。继承自Error

示例

使用 RangeError(对于数值)

js
function check(n) {  if (!(n >= -500 && n <= 500)) {    throw new RangeError("The argument must be between -500 and 500.");  }}try {  check(2000);} catch (error) {  if (error instanceof RangeError) {    // 处理错误  }}

使用 RangeError(对于其他的值)

js
function check(value) {  if (!["apple", "banana", "carrot"].includes(value)) {    throw new RangeError(      'The argument must be an "apple", "banana", or "carrot".',    );  }}try {  check("cabbage");} catch (error) {  if (error instanceof RangeError) {    // 处理错误  }}

规范

Specification
ECMAScript® 2026 Language Specification
# sec-native-error-types-used-in-this-standard-rangeerror

浏览器兼容性

参见

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp