콜백함수를 공부하기 전에 일급 객체에 대한 부분을 간단하게 알고 갈 필요가 있다. 일급 객체란 다른 객체처럼 모든 연산이 가능한 것을 말한다.
콜백함수는 매개변수(parameter)로 전달받은 함수를 말한다. 함수에서 매개변수로 콜백함수를 전달받고 필요할 때 호출하여 사용할 수 있다.
자바스크립트에서 함수는 일급 객체에 해당하기 때문에 이처럼 활용될 수 있다.
<예시>
function print (num, callback) {
for (let i=0; i<=num; i++) {
console.log(callback(i));
}
}
const threeTimes = (a) => 3 * a;
print (3,threeTimes);
//0
//3
//6
//9
(참고) 고차함수: 함수를 전달 인자로 받거나(콜백함수) 함수를 반환하는 함수.
=> 비동기와 동기적인 프로그래밍의 특징과 차이에 대해 자세히 알아볼 것.