코딩항해기
[JS] 콜백 지옥 Callback Hell 본문
콜백 함수 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
'HTML CSS JS' 카테고리의 다른 글
[JS] SweetAlert2 라이브러리 (1) | 2024.11.09 |
---|---|
[Bootstrap] 부트스트랩 프레임워크 (2) | 2024.11.09 |
[JS] Promise (0) | 2024.11.07 |
[Web] HTTP 코드 정리 (0) | 2024.10.15 |
[JS] location.replace() 와 location.href 차이 (+ 페이지 함수) (0) | 2024.09.19 |