이번 포스팅은 Java스크립트에서 예외 처리를 다루는 두 가지 중요한 개념인 try...catch 문과 throw 문에 대해 알아보겠습니다. 또한 사용자 정의 에러를 만드는 방법도 살펴보겠습니다.
1. try...catch 문
try...catch 문은 코드 실행 중 발생할 수 있는 오류를 처리하기 위해 사용됩니다. try 블록 내의 코드에서 오류가 발생하면, 해당 오류는 catch 블록으로 전달되어 처리됩니다.
예제:
function divide(a, b) {
try {
if (b === 0) {
throw new Error("0으로 나눌 수 없습니다.");
}
return a / b;
} catch (error) {
console.log("에러 발생:", error.message);
}
}
console.log(divide(10, 2)); // 5
console.log(divide(10, 0)); // 에러 발생: 0으로 나눌 수 없습니다.
위의 예제에서 divide 함수는 두 숫자를 나누는 기능을 합니다. 만약 두 번째 인자가 0이라면, throw 문을 사용하여 에러를 발생시킵니다. 이 에러는 catch 블록에서 처리되어 사용자에게 에러 메시지가 출력됩니다.
2. throw 문
throw 문은 특정 조건에서 사용자 정의 오류를 발생시키고 싶을 때 사용합니다. throw 다음에는 예외를 나타내는 객체를 지정할 수 있습니다. 일반적으로 Error 객체를 사용하지만, 사용자 정의 객체도 가능합니다.
예제:
function checkAge(age) {
if (age < 18) {
throw new Error("미성년자는 접근할 수 없습니다.");
}
return "접근 허가";
}
try {
console.log(checkAge(16)); // 에러 발생
} catch (error) {
console.log("에러 발생:", error.message);
}
위의 예제에서 checkAge 함수는 나이를 체크하여 18세 미만일 경우 오류를 발생시킵니다. try 블록에서 호출되며, 오류가 발생하면 catch 블록에서 에러 메시지를 출력합니다.
3. 사용자 정의 에러 생성
Java스크립트에서는 사용자가 직접 에러 클래스를 만들어서 사용할 수도 있습니다. 이를 통해 더 구체적이고 명확한 에러 처리가 가능합니다.
예제:
class CustomError extends Error {
constructor(message) {
super(message);
this.name = "CustomError";
}
}
function validateInput(input) {
if (input === "") {
throw new CustomError("입력값이 비어있습니다.");
}
return "입력값 확인 완료";
}
try {
console.log(validateInput("")); // 에러 발생
} catch (error) {
console.log(`${error.name}: ${error.message}`);
}
위의 예제에서 CustomError라는 사용자 정의 에러 클래스를 만들어 사용했습니다. validateInput 함수는 입력값이 비어있을 경우 CustomError를 발생시킵니다. 이를 통해 에러의 이름과 메시지를 보다 명확하게 구분할 수 있습니다.
4.결론
오늘은 Java스크립트에서 예외를 처리하는 방법인 try...catch 문, throw 문, 그리고 사용자 정의 에러 생성에 대해 알아보았습니다. 이러한 예외 처리 기법을 통해 코드의 안정성을 높이고, 예상치 못한 오류에 효과적으로 대응할 수 있습니다.
'IT프로그램 언어 > JavaScript' 카테고리의 다른 글
Java스크립트(Number 객체: 주요 멤버) (0) | 2024.11.30 |
---|---|
Java스크립트(문자열 함수) (1) | 2024.11.28 |
Java스크립트(템플릿 리터럴, 구조 분해 할당, 기본 매개변수, Spread & Rest 연산자) (1) | 2024.11.26 |
Java스크립트(Async/Await) (0) | 2024.11.26 |
Java스크립트(Promise) (3) | 2024.11.25 |