2025-11-03 01:13
Tags 자바스크립트
콜백
- 다른 함수에 인자로 전달되어 특정 시점에 실행되는 함수이다.
- 자바스크립트의 비동기 처리를 위해 탄생
- 콜백이 중첩되어 발생하는 ‘콜백 지옥’은 코드의 가독성을 해치며, 이를 해결하기 위해 프로미스]와 async/await 문법이 등장했다.
| 구분 | 콜백 (Callback) | 프로미스 (Promise) | Async/Await |
|---|---|---|---|
| 핵심 개념 | 함수를 인자로 전달하여 실행 | 비동기 상태와 결과를 나타내는 객체 | 프로미스를 동기 코드처럼 보이게 하는 문법 |
| 코드 형태 | 중첩된 함수 구조 (피라미드) | .then() 체이닝 | try...catch를 사용한 동기적 코드 형태 |
| 가독성 | 낮음 | 보통 | 높음 |
| 에러 처리 | 각 콜백마다 개별 처리 필요 | .catch()로 중앙 집중 가능 | try...catch 구문으로 직관적 처리 |
| 등장 시기 | JavaScript 초기부터 | ES6 (2015) | ES8 (2017) |