* Event Loop & Call Stack Call Stack(호출 스택)은 동기 코드를 담당하고, Event Loop(이벤트 루프)는 비동기 코드를 담당한다. 여기서, 백그라운드와 태스크 큐의 개념을 알아야 하는데, 백그라운드는 타이머를 처리하고, 이벤트 리스너를 저장하는 공간이다. 예시로, setTimeout 같은 함수가 실행되면 백그라운드에서 시간을 재고 시간이 되면 setTimeout에 정의 해놓은 콜백 함수를 태스크 큐로 보내게 된다. 즉, 이 시점에서는 백그라운드에서 코드가 실행되는 것이 아니라 실행될 콜백 함수들이 태스크 큐로 들어간다는 것이다. 태스크 큐는 실행되어야 할 콜백 함수들이 대기하고 있는 공간이다. 태스크 큐에 먼저 들어온 함수부터 실행되기 시작하지만 이 때, 태스크 큐가 함..