자바스크립트는 비동기 처리를 위해 콜백 함수를 활용한다. 하지만 콜백 함수를 계속해서 사용하면 콜백 헬로 인해 가독성이 떨어지고 에러를 처리하기도 어려워진다. ES6에서는 이를 해결하기 위해 Promise를 도입하였다. 이전에 동기와 비동기에 대해 공부를 하면서 Promise를 간략하게 알아봤는데 프로젝트를 하면서 Promise를 사용하게 되었고 확실히 개념을 잡고 정리를 해야할 필요성이 생겼다. 먼저 비동기가 무엇인지 알아보자. 자바스크립트 엔진은 하나의 태스크만 실행할 수 있는 싱글 스레드로 작동하기 때문에 한 번에 하나의 함수만 실행할 수 있다. 다음 코드를 보자. 싱글 스레드이기 때문에 apple 함수를 호출하면 apple 함수가 실행이 될 동안 banana 함수는 실행되지 않는다. "apple"..