[typescript] throw 키워드를 사용하여 예외를 발생시킬 때 주의해야 할 점은 무엇인가요?

첫째, throw 키워드를 사용하여 예외를 발생시키면 해당 함수의 실행이 즉시 중지됩니다. 이러한 동작은 호출자에게 예외를 처리하도록 유도하지만, 실제로 예외 처리가 이루어지지 않을 경우 프로그램이 종료될 수 있습니다.

둘째, throw 키워드를 통해 발생시킨 예외는 해당 함수를 호출한 부모 함수로 전파됩니다. 따라서 예외를 적절히 처리하지 않으면 상위 수준에서의 처리가 필요합니다.

예를 들어, 아래와 같이 TypeScript에서 throw 키워드를 사용하여 예외를 발생시키는 코드를 작성할 수 있습니다.

function divide(x: number, y: number): number {
    if (y === 0) {
        throw new Error("Divisor cannot be zero");
    }
    return x / y;
}

위 코드에서 throw 키워드를 사용하여 예외를 발생시키고 있습니다.

또한, 예외 처리구문을 사용하여 예외를 적절히 처리하는 것이 좋습니다. TypeScript의 try...catch문을 사용하여 예외를 처리할 수 있습니다. 이를 통해 프로그램이 예외로부터 회복하여 계속 실행될 수 있도록 할 수 있습니다.

try{
    let result = divide(10, 0);
    console.log(result);
} catch (error) {
    console.error(error);
}

이렇게 하면 예외가 발생한 경우 프로그램이 종료되는 것을 방지할 수 있습니다.

참고 문헌: