본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
https://fastcampus.info/4n8ztzq
250720(일) 20일차
문법 - 예외
예외(Exception)
코드를 실행하다보면 예상치 못한 상황(에러)이 생기곤 하는데
네트워크 연결 실패, 잘못된 사용자 입력, 존재하지 않는 파일 접근 등
이럴 때 어떻게 그 상황을 안전하게 처리할 것인가가 예외 처리의 핵심
예외 처리의 기본 구존
자바스크립트에선 trhow, try, catch, finally로 예외를 다룰 수 있다
try {
// 예외 발생 가능성 있는 코드
} catch (e) {
// 예외 발생 시 처리
} finally {
// 무조건 실행
}
에러를 직접 발생시킬 땐 throw
에러가 발생할 가능성이 있는 코드를 실행하려면 try
에러 발생 시 이를 처리하는 블록이 catch
에러 발생 여부와 상관없이 무조건 실행되는 블록 finally
예외 처리 함수
function doException() {
throw new Error("오류 발생!");
}
function noException() {
return true;
}
직접 예외를 발생시키는 함수 doException( ) / 아닌 함수 noException( )
이 함수들을 try, catch, finally로 감싸보며 어떤 흐름으로 실행되는지 확인,
throw가 실행된 이후, 해당 예외를 어디서든 가까운 catch에서 잡으면 프로그램은 멈추지 않고 정상 종료된다
즉, 예외를 일관되게 처리하면 앱이 죽지않고도 피드백을 줄 수 있다
예외를 리턴값 대신 쓰는 이유
함수마다 retun true / false로 성공, 실패를 판별하면
모든 호출부에 if 문에 붙어 코드가 지저분해짐
예외를 활용하면 실패 흐름을 별도의 catch로 옮겨서 구조를 더 명확하게 분리할 수 있고
예외를 일괄 처리할 수 있는 장점도 생김
이번 강의는 예외 처리 문법 자체보다
예외를 어떻게 구조적으로 활용하느냐에 대해 감을 잡을 수 있어서 좋았다
단순한 문법 이상으로, 프로그램의 안정성과 유지 보수성을 높이는 방법