callback함수

까만호랭·2023년 8월 6일
0

callback 함수는?

나중에 수행할 것을 예약해 두는 함수이며 함수 안에서 실행하는 또 다른 함수라고도 표현할 수 있다.

function nice(su, f1, f2) {
	if(su %2 === 0)
		f1();
	else
		f2();
};  

nice라는 함수를 선언하고 그 함수의 매개변수 값으로 su, f1, f2가 들어있다.
이때 if문을 통하여 su를 2로 나눈 값이 0이라면
f1( )함수를 실행하고, 그 외의 값들은 f2( )를 실행하라는 뜻인데
이때 nice함수 안에 들어간 매개변수인 f1,과 f2가 callback함수가 된다.
(nice 함수 안에서 실행하는 또 다른 함수가 f1, f2이기 때문)

function ask(question, yes, no) {
	if(confirm(question))
		yes(); // ask에 의해서 수행되는 yes, no 함수들은 callback function이다!!!
	else
		no();
}

여기서도 ask라는 함수를 먼저 정의하고
그 함수를 실행하면 if문을 통해 yes( )와 no( ) 함수들을 실행하게 되는데
이때 yes, no 모두 callback 함수!!

JS에서는 함수를 특별한 종류의 값으로 취급하기 때문에 이렇게 인자값으로 넘기거나 어떤 변수에 대입해서 호출 하는게 가능하다는 것이 자바와는 다른 점이다.

profile
남들과 함께 발자국을 남기는 까만호랭

0개의 댓글