ReferenceError

ReferenceError

ReferenceError 객체는 현재 스코프에 존재하지 않거나 아직 초기화되지 않은 변수를 참조할 때의 오류를 나타냅니다. Error의 하위 클래스입니다.

출처: ReferenceError - JavaScript | MDN

본문

ReferenceError 객체는 현재 스코프에 존재하지 않거나(또는 아직 초기화되지 않아) 변수를 참조할 때의 오류를 나타냅니다. ReferenceError는 직렬화 가능한 객체이므로 structuredClone()으로 복제하거나 postMessage()로 Worker 사이에서 복사할 수 있습니다. ReferenceErrorError의 하위 클래스입니다.

생성자

  • ReferenceError() — 새 ReferenceError 객체를 만듭니다.

인스턴스 속성

부모 Error의 인스턴스 속성도 상속합니다. ReferenceError.prototype에 정의되어 모든 인스턴스가 공유하는 속성: constructor, name(오류 타입의 이름, 초기 값은 "ReferenceError").

인스턴스 메서드

부모 Error의 인스턴스 메서드를 상속합니다.

예제

ReferenceError 잡기 — 아래 코드는 존재하지 않는 변수를 참조할 때 ReferenceError가 던져지는 것을 보여줍니다.

try {
  let a = undefinedVariable;
} catch (e) {
  console.log(e instanceof ReferenceError); // true
  console.log(e.message); // "undefinedVariable is not defined"
  console.log(e.name); // "ReferenceError"
  console.log(e.stack); // Stack of the error
}

ReferenceError 만들기new ReferenceError("Hello")로 직접 만들어 던질 수 있습니다.

try {
  throw new ReferenceError("Hello");
} catch (e) {
  console.log(e instanceof ReferenceError); // true
  console.log(e.message); // "Hello"
  console.log(e.name); // "ReferenceError"
  console.log(e.stack); // Stack of the error
}

더 알아보기

  • Error — 모든 오류 타입의 기본 클래스
  • TypeError, RangeError, SyntaxError, URIError, EvalError — 기타 내장 오류 타입