RangeError() constructor

The RangeError() constructor creates an error when a value is not in the set or range of allowed values.

Syntax

new RangeError()
new RangeError(message)
new RangeError(message, options)
new RangeError(message, fileName)
new RangeError(message, fileName, lineNumber)

Parameters

message Optional

Human-readable description of the error.

options Optional

An object that has the following properties:

cause Optional

A property indicating the specific cause of the error. When catching and re-throwing an error with a more-specific or useful error message, this property can be used to pass the original error.

fileName Optional Non-Standard

The name of the file containing the code that caused the exception

lineNumber Optional Non-Standard

The line number of the code that caused the exception

Examples

Using RangeError (for numeric values)

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) {
    // Handle the error
  }
}

Using RangeError (for non-numeric values)

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) {
    // Handle the error
  }
}

Specifications

Specification
ECMAScript Language Specification
# sec-nativeerror-constructors

Browser compatibility

BCD tables only load in the browser

See also