JavaScript에서 다양한 유형의 예외 던지기
자체 예외를 던져보고, 이 경우 오류 객체가 어떻게 동작하는지 살펴봅시다:
try {
throw new Error('예외 텍스트');
} catch (error) {
console.log(error.name); // 'Error'
console.log(error.message); // '예외 텍스트'
}
보시다시피, 우리 예외의 유형은 'Error'입니다.
이와 같은 방식으로 던져진 모든 예외는
동일한 유형을 가질 것입니다. 그러나 이것은 항상
편리하지는 않을 수 있습니다. 왜냐하면 여러 예외가 있을 경우
서로 구분할 수 없기 때문입니다.
JavaScript는 이 문제에 대한 해결책을 제공합니다:
Error 유형뿐만 아니라 JavaScript에 내장된
모든 오류 유형, 예를 들어 TypeError,
SyntaxError, RangeError의
예외도 던질 수 있습니다.
예를 들어 SyntaxError 유형의 예외를
던져 봅시다:
try {
throw new SyntaxError('예외 텍스트');
} catch (error) {
console.log(error.name); // 'SyntaxError'
console.log(error.message); // '예외 텍스트'
}
TypeError 유형의 예외를 던지세요.
SyntaxError와 RangeError 유형의 예외를 던지세요.
하나의 try 블록을 사용하여 이러한 예외를
잡으세요. catch 블록에서
서로 다른 유형의 예외에 대해 서로 다른 오류 메시지를
출력하세요.