CallBack Function (콜백 함수) 이란?

Asher Park·2023년 4월 13일
0
post-thumbnail

CallBack Function 이란 ❓

자바스크립트에서 일반적으로 사용되는 함수 패턴 중 하나로,
다른 함수에 인자로 넘겨진 함수 또는 함수 안에서 실행하는 또 다른 함수 라고 할 수 있다.

대부분 비동기적인 작업에 유용하게 사용된다.

예제

function add(a, b, callback) {
  const result = a + b;
  callback(result);
}

function print(result) {
	console.log('결과: ' , result);
}

add(1,2, print); // 결과: 3

'add' 함수는 두 숫자를 더한 후, 인자로 받은 콜백 함수 'print' 를 호출 한다.


사용 이유 ❓

  • 비동기 작업처리
    자바스크립트는 주로 웹 브라우저 환경에서 실행되고, 웹 어플리케이션에서 다양한 비동기 작업이 발생한다.
    서버에서 데이터를 가져오거나, 파일을 읽는 작업 등의 비동기 작업의 결과를 처리할 때,
    코드의 실행 순서를 유지하고, 작업의 결과를 받아 처리할 수 있도록 한다.
getUserInfo(1, printUserInfo);

function getUserInfo(userId, callback) {
	$.ajax({
    	type: 'GET',
      	url: `/api/users/${userId}`,
      	success: function(res) {
        	callback(res.data.userInfo);
        }
    });
};

function printUserInfo(userInfo) {
	console.log(userInfo);
};
  • 함수 실행 순서 제어
    여러 함수가 순차적으로 실행되어야 하는 경우, 실행 순서를 보장할 수 있다.

단점 ❗

  • CallBack Hell (콜백 지옥) : 콜백 함수가 중첩되어 사용될 경우, 코드가 복잡해지고 가독성이 떨어질 수 있다.
profile
배움에는 끝이없다

0개의 댓글