--- title: InternalError slug: Web/JavaScript/Reference/Global_Objects/InternalError tags: - Class - InternalError - JavaScript - Object translation_of: Web/JavaScript/Reference/Global_Objects/InternalError browser-compat: javascript.builtins.InternalError ---
{{JSRef}} {{non-standard_header}}

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

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

생성자

{{jsxref("InternalError/InternalError", "InternalError()")}}
새로운 InternalError 객체를 만듭니다.

인스턴스 속성

{{jsxref("Error.prototype.message", "InternalError.prototype.message")}}
오류 메시지. {{jsxref("Error")}}로부터 상속되었습니다.
{{jsxref("Error.prototype.name", "InternalError.prototype.name")}}
오류 이름. {{jsxref("Error")}}로부터 상속되었습니다.
{{jsxref("Error.prototype.fileName", "InternalError.prototype.fileName")}}
오류가 발생한 파일 경로. {{jsxref("Error")}}로부터 상속되었습니다.
{{jsxref("Error.prototype.lineNumber", "InternalError.prototype.lineNumber")}}
오류가 발생한 곳의 줄 번호. {{jsxref("Error")}}로부터 상속되었습니다.
{{jsxref("Error.prototype.columnNumber", "InternalError.prototype.columnNumber")}}
오류가 발생한 행의 열 번호. {{jsxref("Error")}}로부터 상속되었습니다.
{{jsxref("Error.prototype.stack", "InternalError.prototype.stack")}}
스택 추적. {{jsxref("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(너무 많은 재귀 호출)를 보시길 바랍니다.

명세

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

브라우저 호환성

{{Compat}}

같이 보기