비동기 기능들이 많아지면서 콜백으로 동기를 맞추려는 경우 수많은 콜백을 중첩 사용할 수밖에 없었다. 이러한 것은 코드에 대한 가독성을 매우 떨어뜨렸고 이를 효과적으로 제어해 줄 만한 것이 필요해졌다. 이를 해결하기위해 다양한 진영해서 Promise와 비슷한 개념들을 발