Asynchronous JS 동기(Synchronous)와 비동기(Asynchronous) 동기식 순차적, 직렬적 테스트 수행 요청을 보낸 후 응답을 받아야만 다음 동작이 이루어짐 (blocking) 비동기식 병렬적 태스크 수행 요청을 보낸 후 응답을 기다리지 않고 다음 동작이 이루어짐 (non-blocking) 즉, 요청을 보내놓고 다음 태스크로 진행 왜 비동기(Asynchronous)를 사용하는가? 사용자 경험 예를 들어 데이터를 구동하고 실행되는 앱이 있으며 이 데이터의 크기가 굉장히 크다고 가정 동기식 코드라면 데이터를 모두 로드한 뒤에야 앱이 실행되기 때문에, 로드되는 동안 우리는 앱을 사용할 수 없는 상태로 얼마나 걸릴지 모르는 로딩 시간을 기다려야함 즉, 앱이 멈춘 것처럼 보임 이처럼 동기식..