기초공사 (html,css,javascript)
04_콜백함수 본문
콜백함수는 다른함수의 인수로 사용하는 함수를 가리킵니다.
아래 예제를 살펴보면 이해가 된다.
function main(x){
x(); //콜백함수 호출
}
function sayHi(){
console.log("안녕");
}
main(sayHi);
중요한것은,
전달해준 콜백함수는 콜백함수를 전달받은 함수에(main) 의해서 호출된다.
main함수에 전달해줬기 때문에 main함수 내부에서.언제 어떻게 호출될지는 콜백함수를 전달받은
main함수의구현상황에 따라 달려있다.
// 또 다른 예제를 살펴보자
function greetToUser(greet) { //greeToUser함수의 인수를 greet그릇에 받는다.
const name = "박희정"
greet(name); //전달해준 콜백함수 호출할때 이 함수내에서 구현한 name이라는 변수를 집어넣어줬다.
}
function greetInkorea(name){
console.log(name + "님 안녕하세요");
}
function greetInEnglish(name){
console.log(name + "how are you");
}
greetToUser(greetInEnglish); // 미리 저장을 해놓고 필요할때 인수를 변경해주면 되는 편한 함수이다.
// 본 예제
function getDate(callback){
let userName = prompt("이름을 입력하세요");
let userAge = prompt("나이를 입력하세요");
callback(userName, userAge);
// console.log(callback); showDate함수 내용인걸 알수있다.
}
function showDate(name,age){
alert(`안녕하세요 ${name}님~ ${age}이군요`)
}
getDate(showDate );
결과
'javascript > js_study' 카테고리의 다른 글
05_selectedIndex (0) | 2023.05.26 |
---|---|
04_타이머함수 (0) | 2023.05.21 |
03_마무리문제 (0) | 2023.05.19 |
03_반복문_for / foreach (0) | 2023.05.19 |
03_switch문 (0) | 2023.05.19 |