콜백 : 나중에 불려진다. 어떤 함수에 인자로 전달된 함수를 말합니다.
예제 1과 예제 2, 예제 3은 동일한 결과를 볼 수 있습니다.
예제1)
function main(x) {
console.log("준비작업")
x();
}
function sayHi() {
console.log("안녕");
}
main(sayHi); // 안녕이 콘솔로 나옵니다.
// main(sayHi()) -> 함수의 리턴 값을 전달하게 됩니다.
예제2)
function main(x) {
console.log("준비작업");
x();
}
main(function () {
console.log("안녕");
});
예제3)
function main(x) {
console.log("준비작업");
x();
}
main(() => {
console.log("안녕");
});
응용
function greetToUser(greet) {
const name = "별코딩";
// ... 데이터 로딩
greet(name);
}
function greetInKorean(name) {
console.log(name + "님 안녕하세요");
}
function greetInEnglish(name) {
console.log("Hi Hello " + name);
}
greetToUser(greetInEnglish);