[typescript] 타입스크립트에서 발생할 수 있는 예외의 종류는 어떤 것들이 있나요?

타입스크립트는 자바스크립트의 한 종류로, 정적 타입을 지원하여 개발자가 코드를 더 견고하게 유지할 수 있도록 돕습니다. 하지만 여전히 예외가 발생할 수 있습니다. 이러한 예외를 효과적으로 처리하기 위해서는 다음과 같은 주요 예외 유형을 이해하는 것이 중요합니다.

유형

1. 타입 에러 (Type Errors)

타입스크립트에서의 가장 일반적인 예외는 타입 에러입니다. 이는 잘못된 타입의 값이 사용될 때 발생하며, TypeError 예외가 throw됩니다.

const name: string = "Alice";
name = 42; // Type Error: 'number' is not assignable to type 'string'

2. 널 및 언디파인드 에러 (Null and Undefined Errors)

널 (null) 또는 언디파인드 (undefined) 값에 대한 접근 시도는 런타임 에러를 발생시킬 수 있습니다.

let user: {
  name: string,
  age?: number
};
console.log(user.age!); // Null or Undefined Error: Cannot read property 'age' of undefined

3. 런타임 에러 (Runtime Errors)

실행 중 예상치 못한 조건에 대해 발생하는 예외로, 타입에 관계없이 발생할 수 있습니다.

function divide(x: number, y: number): number {
  if (y === 0) {
    throw new Error('Divide by zero');
  }
  return x / y;
}

예외 처리

1. try-catch-finally 문

try {
  // 예외 발생 가능한 코드
} catch (error) {
  // 예외 처리
} finally {
  // 항상 실행되는 코드
}

2. 예외 타입에 따른 처리

try {
  // 예외 발생 가능한 코드
} catch (error) {
  if (error instanceof TypeError) {
    // 타입 에러 처리
  } else if (error instanceof Error) {
    // 일반적인 예외 처리
  }
}

주의사항

타입스크립트에서 예외를 처리하는 방법에 대한 이해는 소프트웨어의 안정성을 높이고 개발자가 코드를 더 신뢰할 수 있도록 도와줍니다.

참고 문헌: