RangeError

RangeError 객체는 어떤 값이 집합에 없거나 허용되는 범위가 아닐 때 오류를 나타냅니다.

설명

어떤 값을 그 값이 포함되는 범위를 허용하지 않는 함수에 인수로 전달하려 할 때 RangeError가 발생합니다.

이 문제는 다음과 같은 경우에 발생할 수 있습니다.

RangeError직렬화 가능한 객체이기 때문에, structuredClone()로 복제하거나 postMessage() (en-US)를 사용하여 Workers 간에 복사할 수 있습니다.

생성자

RangeError()

새로운 RangeError 객체를 만듭니다.

인스턴스 속성

RangeError.prototype.message

오류 메시지. Error.prototype.message를 상속되었습니다.

RangeError.prototype.name

오류 이름. Error로부터 상속되었습니다.

RangeError.prototype.cause

에러 원인. Error로부터 상속되었습니다..

RangeError.prototype.fileName

오류가 발생한 파일 경로. Error로부터 상속되었습니다.

RangeError.prototype.lineNumber

오류가 발생한 곳의 줄 위치. Error로부터 상속되었습니다.

RangeError.prototype.columnNumber

오류가 발생한 곳의 열 위치. Error로부터 상속되었습니다.

RangeError.prototype.stack (en-US)

스택 추적. 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) {
    // Handle the error
  }
}

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

명세

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

브라우저 호환성

BCD tables only load in the browser

같이 보기