함수가 가장 나중에 불린다고 해서 CallBack 함수라고 부른다.
보통 콜백 함수를 구현할 때 함수의 인자에 함수를 넣는 방식으로 진행한다.
//1. sayHello라는 함수가 콜백 함수로 사용되는 예시
function sayHello(){ //sayHello 라는 함수를 만듭니다.
console.log('수강생 여러분 안녕하세요');
}
function getHuman(callback){ //getHuman 함수의 파라미터에는 함수가 들어갑니다.
callback(); //callback 파라미터는 함수이기에 실행시킬 수 있습니다.
}
//getHuman의 파라미터인 callbackFunc에는 sayHello가 들어가고 sayHello가 실행됩니다.
getHuman(sayHello) //'나는 그랩이다'가 출력됩니다.
콜백 함수를 사용할 때 함수로 정의된 변수를 넣지 않고 바로 함수를 넣을 수도 있다. 함수에 이름을 붙여서 선언하지 않고 1회용으로 사용되는 함수를 만드는 것
getHuman(function(){
console.log('나는 그랩이다.')
})
javascript에서 기본으로 제공해주는 많은 함수, 라이브러리들을 사용할 때 콜백 함수를 쓰기 때문이다.
대표적으로 setTimeout, setInterval 함수가 있다.
setTimeout(function(){
console.log('3초 뒤에 실행됩니다!');
}, 3000)
setInterval(function(){
console.log('1초마다 출력됩니다')
},1000)