콜백함수

|

모던 Javascript를 보며 정리했습니다.

리액트로 javascript를 많이 만졌지만 javascript의 몇몇 개념들은 아직까지 아리송하다. 그 중 하나가 바로 콜백 함수이다.

콜백 함수?

함수를 함수의 인수로 전달하고, 필요하다면 인수로 전달한 그 함수를 나중에 호출(called back)하는 것이 콜백 함수의 개념이다.

이렇게 글로 늘여트려놓으면 콜백 함수가 뭔지 와닿지 않는다. 직접 코드로 만나보자.

function ask(question, yes, no) {
  if (confirm(question)) yes()
  else no();
}

function showOk() {
  alert( "동의하셨습니다." );
}

function showCancel() {
  alert( "취소 버튼을 누르셨습니다." );
}

// 사용법: 함수 showOk와 showCancel가 ask 함수의 인수로 전달됨
ask("동의하십니까?", showOk, showCancel);

함수 ask의 인수, showOk와 showCancel은 콜백 함수 또는 콜백이라고 불린다.