InternalError

Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

InternalError 객체는 JavaScript 엔진 내부에서 발생한 오류를 나타냅니다.

다음의 오류 예시의 경우는 일반적으로 어떤 값이 너무 큰 경우입니다.

  • "too many switch cases", (swich case의 수가 너무 많음)
  • "too many parentheses in regular expression", (정규표현식에 너무 많은 괄호가 있음)
  • "array initializer too large", (배열 초기화 값이 너무 큼)
  • "too much recursion". (너무 많은 재귀 호출)

생성자

InternalError()
새로운 InternalError 객체를 만듭니다.

인스턴스 속성

InternalError.prototype.message
오류 메시지. Error로부터 상속되었습니다.
InternalError.prototype.name
오류 이름. Error로부터 상속되었습니다.
InternalError.prototype.fileName
오류가 발생한 파일 경로. Error로부터 상속되었습니다.
InternalError.prototype.lineNumber
오류가 발생한 곳의 줄 번호. Error로부터 상속되었습니다.
InternalError.prototype.columnNumber
오류가 발생한 행의 열 번호. Error로부터 상속되었습니다.
InternalError.prototype.stack (en-US)
스택 추적. Error로부터 상속되었습니다.

예제

너무 많은 재귀 호출

이 재귀 함수는 종료 조건에 따라 10번 수행됩니다.

function loop(x) {
  if (x >= 10) // "x >= 10" 는 종료 조건입니다.
    return;
  // 어떤 코드
  loop(x + 1); // 재귀 호출
}
loop(0);

이 조건을 매우 높은 값으로 설정하면 작동하지 않습니다:

function loop(x) {
  if (x >= 1000000000000)
    return;
  // 어떤 코드
  loop(x + 1);
}
loop(0);

// InternalError: too much recursion(너무 많은 재귀 호출)

더 많은 정보를 보려면 InternalError: too much recursion(너무 많은 재귀 호출)를 보시길 바랍니다.

명세

어떤 표준에도 속하지 않습니다.

브라우저 호환성

BCD tables only load in the browser

같이 보기