예외처리

  • js

posted on 16 Oct 2024 under category js

예외 처리

🌊 try/catch

💫 try…catch

  • 수많은(개발자가 예상하지 못한) 에러(실수, 사용자가 입력을 잘못 한 것, DB가 응답을 잘못한 것, …)를 처리하는 문법

<if/else문과 try/catch의 구성>

A 코드 실행                  
if (A에서 발생한 실수1) {                     try  {
                                               //A 코드 실행
} else if (A에서 발생한 실수2) {              } catch (err) {  
                                              //에러 처리
} ...                                        } ...
  • try 구문의 코드를 실행하다가 에러가 발생하면, try 코드를 “멈추고” 👉 catch로 err와 함께 바로 빠져나감
  • try 구문에서 어떤 에러가 발생해도, if문 분기 처리하던 내용들이 👉 알아서 catch에 잡힘.(ex. SyntaxError, TypeError)
  • 실수1, 실수2, … 비슷한 분류끼리 묶어서 따로 관리 가능!

  • 이런 식으로 try/catch구문을 통해 에러를 처리해줄 수 있음!

🌊 JWT

💫 JWT
1) TokenExpiredError
유효기간이 지난 토큰 = 만료된 토큰
1) JsonWebTokenError
문제 있는 토큰

🌊 에러 객체

  • 자바스크립트가 고대 개발자들의 노고를 보고, “내장” 에러 객체를 만들어둠.
    JWT라는 모듈에서도 제공하는 에러 객체도 있고,
    직접 만들어서도 사용 가능
console.log(err.name);
console.log(err.message);
  • err.name와 err.message은 내장 에러 객체임!
    사용시 이렇게 됨!

try/catch를 사용하면 코드가 종료될 때 exited with code=0으로 되고
사용하지 않으면 exited with code=1 종료됨.
그래서 되도록 try/catch로 에러를 처리해줄 것!

🌊 throw 연산자

  • 에러를 발생시키는 연산자!

throw 에러 객체
ex) throw new SyntaxError(메세지);

throw new SyntaxError("입력 값에 이름이 없습니다.");
  • 이런 식으로 사용하면 됨!