코딩항해기

[JS] 콜백 지옥 Callback Hell 본문

HTML CSS JS

[JS] 콜백 지옥 Callback Hell

miniBcake 2024. 11. 8. 11:09

 

 

콜백 함수 Callback function

콜백함 수는 다른 함수에 매개변수로 넘겨준 함수를 말한다. 함수를 명시적으로 호출하는 방식이 아니라 특정 이벤트가 발생했을 때 시스템에 의해 호출된다.

 

 

콜백 지옥 Callback Hell

 

콜백 지옥은 JavaScript를 이용한 비동기 프로그래밍시 발생하는 문제로서, 함수의 매개 변수로 넘겨지는 콜백 함수가 반복되어 코드의 중첩 깊이가 깊어지는 현상을 말한다. 이 경우 가독성이 떨어지고 유지보수에 어려움이 생기게 된다.

 

콜백 지옥 해결방법

외부로 분리

콜백 함수를 외부로 분리해 비동기 작업 결과를 처리하는 콜백 함수를 따로 정의해 사용하면 코드 가독성을 높일 수 있다. (피라미드가 생기지 않는다.)

 

Promise 활용

 

[JS] Promise

Promise Promise - JavaScript | MDNPromise 객체는 비동기 작업이 맞이할 미래의 완료 또는 실패와 그 결과 값을 나타냅니다.developer.mozilla.org 자바스크립트의 비동기 처리를 위한 하나의 패턴으로 콜백 함

minibcake.tistory.com

 

async/await 문법 사용

비동기 작업을 동기척인 코드처럼 작성할 수 있게 해주는 문법으로 async로 비동기 함수를 선언하고 await 키워드로 비동기 작업의 결과를 기다리는 방식을 통해 가독성과 이해도를 높일 수 있다.

 

 

해당 예시 참고 블로그 : https://wikidocs.net/225110