콜백함수

Featured image

콜백함수란?


JS의 콜백함수는 다른 함수에 인수로 전달되고 나중에 콜백되거나 실행하는 함수임. 특정 이벤트나 작업이 완료된 후임. 이는 비동기식 동작을 허용하며 일반적으로 완료하는데 예측할 수 없는 시간이 걸릴 수 있는 작업을 처리하는데 사용함.

콜백함수의 예

function multiply(a , b, callback){
    let result = a * b;
    callback(result);
}

function logResult(result){
    console.log(result);
}
multiply(3, 3, logResult);

콜백함수는 익명일 수도 있습니다.

multiply(
    4,
    5,
    function(product){
        console.log("The product is: "+product +".");
    }
); // output:20

곱하기 함수를 호출하지만 ‘logResult()’ 와 같은 미리 정의된 함수 대신 인수로 전달할 익명 함수를 만듬.

콜백함수 규칙

  1. 인수로 전달됨. 콜백 함수는 다른 함수를 매개변수로 받아들이는 함수인 고차 함수에 인수로 전달되며 고차 함수가 나중에 콜백함수를 실행함.

  2. 완료 후 실행. 콜백 함수는 사용자 작업, 네트워크 응답, 타이머 만료 등 특정 이벤트나 작업 완료 후 수신 함수에 의해 실행됨.

  3. 비동기 작업 처리: 작업이 완료될 때까지 기다리는 동안 흐름이 계속되는 비동기 작업을 처리하는데 자주 사용됨. 작업 완료시 콜백함수가 트리거 되며 추가 처리 및 응답 처리가 가능함.

  4. 유연성 및 모듈성: 콜백함수를 인수로 전달해 유연한 모듈식 코드를 생성할 수 있음. 다양한 콜백 함수를 동일한 고차 함수에 전달할 수 있으므로 특정 컨텍스트나 요구 사항에 다양한 동작 및 사용자 정의가능.

  5. 오류 처리: 콜백 함수를 사용해 작업 실행 중 발생가능한 오류를 처리할 수있음.

  6. 외부 변수에 대한 클로저 및 액세스 : 콜백 함수는 클로저라고 알려진 주변 범위의 변수에 엑세스 할 수 있음.