[Javascript] 이벤트 루프와 Promise
이벤트루프란, 단일 호출 스택인(싱글쓰레드) javascript에서 비동기 처리를 할 때 꼭 필요한 기능이다. 비동기 작업이 끝난 후, 콜백함수들을 보관하고있는 작업큐(Task Queue/Callback Queue/Event Queue 등으로 불린다)에서 콜스택으로 작업을 푸시 해주는 역할을 한다. 콜스택을 주시하고 있다가 콜스택이 비어있게 되면 작업큐에 대기하고있는 작업을 콜스택으로 푸시 해준다. ES6를 지원하는 자바스크립트 런타임 환경에서는 작업큐에 Micro Task Queue라는 것이 추가 되었다. ES6부터 공식적으로 지원하게 된 Promise도 대표적인 비동기 처리함수 인데, 바로 이 Promise의 콜백은, 기존의 setTimeout 등과는 달리 Micro Task Queue로 들어가게 된..