궁금했던 이유 JS는 기본적으로 싱글 스레드로 작동한다. 근데 비동기 처리를 한다. 오히려 더 헷갈렸다. 아니..싱글 스레드인데 어떻게 비동기처리하는 거지? 왜냐하면 싱글 스레드가 여러 일을 분담해서 할 수 없다고 생각했기 때문이다. 비동기를 처음 설명할 때 가장 쉬운 예시이다. setTimeout()은 비동기 함수이다. // 스레드 출발! console.log("1"); setTimeout(() => { // console.log("First"); const bar = () => setTimeout(() => console.log("Second"), 500); const baz = () => console.log("Third"); bar(); foo(); baz(); 1. bar() 함수가 Call S..