JS: Custom Error

M·2023년 8월 22일
0

TIL

목록 보기
37/42

Custom Error란?


JavaScript에 내장된 Error 클래스를 확장하여 커스텀 에러 객체를 만드는것이다.

class CustomError extends Error {
  constructor(message, errorCode) {
    super(message);
    this.name = this.constructor.name;
    this.errorCode = errorCode;
  }
}
module.exports = CustomError;

코드 설명

class CustomError extends Error

  • CustomError 클래스가 Error 클래스를 상속(에러 객체를 커스텀하기 위해 상속받음)

constructor(message, errorCode)

  • CustomError 클래스의 초기화를 작업을 수행

super(message)

  • 상위 클래스인 Error 클래스의 생성자를 호출하는 역할

this.name = this.constructor.name

  • 클래스의 이름을 할당함 (객체의 이름)

this.errorCode = errorCode

  • errorCode 매개변수를 사용하여 CustomError 객체에 errorCode라는 속성을 추가

module.exports = CustomError

  • CustomError 에러를 외부로 내보냄

외부에서 커스텀 에러를 사용하는 방법

const CustomError = require('../errors/CustomError') // 커스텀 에러를 import

throw new CustomError("액세스 권한이 없습니다.", 401) // 1번: 에러 메세지 2번: 상태 코드

CustomError의 장점

  1. 에러를 구체적으로 나타낼 수 있다.
  2. 일반적인 에러 메세지보다 가독성이 좋아진다.
  3. 다양한 상황에 사용할 수 있다.
  4. 유지보수가 쉬워진다
  5. 에러코드, 에러메시지 그리고 에러의 정보를 추적할 수 있어 디버깅이 편해진다.
profile
자바스크립트부터 공부하는 사람

0개의 댓글