콜백 함수: 다른 함수의 매개 변수로 넘겨준 함수.
콜백함수를 일단 넘겨받고, 때가 되면 나중에 호출(called back)한다.
콜백 함수를 이용하면 여러가지 유연한 동작들을 할 수 있는 함수를 만들 수 있습니다.
[예시 코드]
/* 기분에 따라 다른 동작을 하는 함수 */
function checkMood(mood, goodCallback, badCallback) {
if (mood == "good") {
goodCallback();
} else {
badCallback();
}
}
function cry() {
console.log("엉엉 웁니다.");
}
function sing() {
console.log("즐겁게 노래를 부릅니다.");
}
function dance() {
console.log("신나게 춤을 춥니다.");
}
checkMood("sad", sing, cry);
↳ '엉엉 웁니다.'가 출력됩니다.
checkMood 함수를 호출할 때 매개변수로 mood에 기분에 대한 문자열을 전달하고, 콜백함수인 goodCallBack과 badCallBack에 각각 sing과 cry 함수를 전달합니다.
checkMood 함수가 먼저 호출되고, 매개변수인 mood의 값에 따라 sing과 cry 함수 둘 중 하나가 나중에 호출됩니다.
위 코드는 mood가 "good"이 아니기 때문에 badCallBack에 해당하는 함수가 호출되어 cry 함수가 실행됩니다.
'웹 > JavaScript' 카테고리의 다른 글
[JS] 11. 기초 문법: 배열 (0) | 2022.07.16 |
---|---|
[JS] 10. 기초 문법: 객체 (0) | 2022.07.15 |
[JS] 8. 기초 문법: 함수 표현식 & 화살표 함수 (+호이스팅) (0) | 2022.07.15 |
[JS] 7. 기초 문법: 함수 (0) | 2022.07.15 |
[JS] 6. 기초 문법: 조건문 (0) | 2022.07.15 |