JavaScript를 이용한 비동기 프로그래밍시 발생하는 문제로서, 함수의 매개변수로 넘겨지는 콜백 함수가 반복되어 코드의 들여쓰기 수준이 감당하기 힘들 정도로 깊어지는 현상
step(function (value) {
step(function (value) {
step(function (value) {
step(function (value) {
step(function (value) {
step(function (value) {
});
});
});
});
});
});
비동기를 제어하는 방법 (콜백 지옥 탈출 방법)
1. Promise
즉 서버에서 데이터를 받아올 때 받아오기에 성공할 경우 resolve()함수를 호출하고 실패할 경우 reject() 함수를 호출해서 서로 다른 작업으로 이어질 수 있게 만든다.
2. Promise + async/await