JS & TS/JavaScript

[JavaScript] 예외처리

Bay Im 2025. 3. 22. 16:47

예외처리

  • 예외 exception
    • 예외란 프로그램이 실행 중에 발생하는 런타임 오류 의미
  • 예외 발생
    • throw 키워드
      • throw 표현식;
      • 표현식에는 예외코드를 나타내는 숫자, 오류 메시지를 담고 있는 문자열, Error 객체 등이 올 수 있다.
  • 예외 처리
    • try - catch - finally 문
      • 형식
        • try {
              예외를 처리하길 원하는 실행 코드;
          } catch (ex) {
              예외가 발생할 경우에 실행될 코드;
          } finally {
              try 블록이 종료되면 무조건 실행될 코드; 
              // 예외가 발생하건 안하건 가장 마지막에 무조건 실행 
          }
    • 그 외
      • try - catch
      • try - finally
  • Error 객체
    • 런타임 오류가 발생할 때마다 Error 객체의 인스턴스가 만들어져 해당 오류의 정보를 저장한다.
    • ex.name, ex.message 같이 Error 객체의 정보를 알 수 있다.
  • Strict 모드
    • 더욱 엄격한 오류 검사 적용
    • 스크립트나 함수의 맨 처음에 “use strict” 지시어를 사용하여 선언
    • 예시
      • // 스크립트 예시
        "use strict"    // 전체 스크립트를 strict 모드로 설정함.
        
        try {
            num = 3.14; // 선언되지 않은 변수를 사용했기 때문에 오류를 발생시킴.
        } catch (ex) {
            document.getElementById("text").innerHTML = ex.name + "<br>";
            document.getElementById("text").innerHTML += ex.message;
        
        }
        
        // 함수 예시
        function StrictBlock() {
            "use strict"  // 함수 블록만을 strict 모드로 설정함.
            try {
                num = 123 // 선언되지 않은 변수를 사용했기 때문에 오류를 발생시킴.
            } catch (ex) {
                document.getElementById("funcStrict").innerHTML = ex.name + "<br>";
                document.getElementById("funcStrict").innerHTML += ex.message;
            }
        }


728x90