인프런 커뮤니티 질문&답변
finally관련해서 질문드립니다!
작성
·
160
1
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)
- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다
- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다
- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
"풀스택을 위한 탄탄한 프런트엔드 부트캠프 (HTML, CSS, 바닐라 자바스크립트 + ES6) [풀스택 Part2]"의 "모던 웹을 위한 Javascript+ES6 비동기 처리를 위한 Promise 이해2" 강의 9분 50초 쯤부터 나오는 내용에 대해 질문 드립니다.
Error를 새로 throw하면 정상적인 동작은 멈췄다고 판단해서 finally가 먼저 호출되고, 그 뒤에 있는 catch가 호출된다고 하셨습니다.
그런데 catch를 먼저 선언하고 그 후에 finally를 선언하니 catch 먼저 호출되었습니다.
finally가 먼저 출력되는 것이 아니라 작성 되어있는 순서대로 출력이 되는 게 맞는 건가요??
퀴즈
JavaScript의 삼항 연산자나 구조 분해 할당 같은 새로운 문법들이 주로 어떤 목적을 위해 도입되었을까요?
코드 실행 성능 향상
데이터 타입의 다양화
조건문과 변수 할당 코드 간결화
클래스 상속 구조 개선
답변 1
0
잔재미코딩 DaveLee
지식공유자
안녕하세요. 네 맞습니다.
보통 예외문을 JS 로 작성시에는 (물론 다른 언어도 마찬가지입니다.)
다음과 같이 세 가지 스타일로 작성을 하게 됩니다. catch 가 finally 보다 먼저 작성되는 것이 일반적이고요.
try...catchtry...finallytry...catch...finally
finally 선언문은 예외 발생 여부와 상관없이 실행되는데, 위와 같은 순서에서는 catch 를 먼저 호출하고, 그 다음에 호출하게 됩니다. 추가로 다음 링크도 한번 검토해보셔도 참고해보시는데 도움이 되실 것 같은데 어떠실까요?
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Statements/try...catch





아 이해 된 것 같습니다! 감사합니다!