강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

haha-jh님의 프로필 이미지
haha-jh

작성한 질문수

풀스택을 위한 탄탄한 프런트엔드 부트캠프 (HTML, CSS, 바닐라 자바스크립트 + ES6) [풀스택 Part2]

모던 웹을 위한 Javascript+ES6 비동기 처리를 위한 Promise 이해1

Promise 이해1 11분 12초

작성

·

286

0

안녕하세요 강의 잘 듣고 있습니다 ~

 

11분 12초 부분에 질문이 있어 글을 올립니다.

 

setTimeout() 안에 let num = 10 으로 되어 있으니

 

처음 결과가 "error" 가 나오는건 이해가 되었습니다.

 

근데 두번째 then 에서 왜 "by Dave Lee"가 나오는지는

 

의문입니다.  똑같이 num 값이 10이기 때문에 "error2"가 나와야 하는거 아닌가요 ??

답변 1

0

then 구문은 비동기적으로 실행되는 것을 막고, 순차적으로 실행되게끔 만드는 기능이니까요.

첫번째 then 구문에서 에러가 나서, 에러가 표시되었고, 그 다음에 순차적으로 실행될 then 구문이 실행된 것일 뿐이고요. 그 구문에 by Dave Lee 를 출력하는 것이라서 해당 구문이 출력된 것이고, 해당 구문을 실행하는데 console.log 가 어떤 에러를 일으키지는 않을 꺼니까요. 해당 구문에서 에러가 나서 error2 가 출력되지는 않은 것이라고 보시면 어떠실까요?

haha-jh님의 프로필 이미지
haha-jh

작성한 질문수

질문하기