try ~ catch

남예지·2022년 11월 15일
0

try ~ catch

mutation이 항상 성공하는 것은 아니며, Backend 컴퓨터에 문제가 발생할 수도 있고, 내가 수정하려는 게시물이 갑자기 삭제가 되는 바람에 수정에 문제가 발생하는 등 여러가지 실패 가능성이 있습니다.

따라서, 우리는 성공에 대한 처리, 실패에 대한 처리를 나누어 작업해야 합니다.

try-catch문은 예외를 처리하기 위한 구문입니다.
그래서 만약 예외가 발생하면 catch문 안으로 들어가 그 안에 실행문을 실행합니다.
맨 뒤에 finally{} 구문이 붙을 수 있으나 필수는 아니고 선택적으로 붙일수 있으며, try-catch 상관없이 마지막에 무조건 실행되어야할 코드를 적습니다.

try~catch 구조

자바스크립트에서 try~catch는 3가지 형식으로 존재합니다

try...catch
try...finally
try...catch...finally

try {
		await createBoard({
				variables: {
						aaa: "훈이",
						bbb: "1234",
						ccc: "안녕하세요 훈이에요",
						ddd: "반갑습니다"
				}
		})

} catch(error) {
		alert(error.message)     // 경고창(실패했습니다.)  ==>  백엔드 개발자가 보내주는 실패 메시지
} finally {
	// 성공, 실패 여부와 상관없이 무조건 마지막에 실행되는 부분
	// 필요없다면 생략 가능
}

기본 구조는 위와 같습니다. 기존에 함수 안에 있던 코드를 try안에 넣고 catch 안에 에러시 실행할 코드를 적으면 됩니다.

오류가 나면 우선 catch문이 있는지 확인 후 조건에 맞는 catch문으로 들어가고, 조건에 맞는 catch문이 없다면 예외는 처리되지 못하고 에러가 발생합니다.

오류를 잡기 위해서는 try문 안에 넣을 코드의 범위를 잘 선택해야합니다.

profile
총총

0개의 댓글