데브허브 | DEVHUB | Can you do this JS Interview Question?Can you do this JS Interview Question?
- 이 JavaScript 면접 질문의 핵심은
fn 함수의 실행 순서를 정확히 이해하는 것입니다. 💡
fn 함수는 개발자들이 비동기 동작에 대해 흔히 가지는 오해를 유발하도록 설계되었습니다. 🤯
- 많은 사람들이
fn 함수 전체를 비동기 작업으로 착각하여 console.log('one')이 나중에 출력될 것이라고 예상합니다. ❌
- 하지만
fn 함수 내부에 있는 console.log('one')은 new Promise 객체가 초기화될 때 동기적으로 실행됩니다. 🚀
new Promise 생성자 자체는 동기적으로 실행되며, 그 안에 있는 코드는 즉시 실행됩니다. .then 블록만 비동기적으로 처리됩니다. 🔄
- 따라서 올바른 출력 순서는
start, middle, one, end, 그리고 마지막으로 success입니다. ✅