[JS] callback이란?

우리는 Javascript라는 언어로 로직을 구현할 때 'callback'이라는 단어를 한번쯤은 들어봤을 것이다.

💡 callback이란?
어떤 이벤트가 발생한 후, 수행될 함수를 의미한다.
쉽게 말해, 어떤 일을 다른 객체에게 시키고, 그 일이 끝나는 것은 기다리지 않고 끝나고 부를 때까지 다른 일을 하는 것을 말한다.
👉그렇기 때문에 non-block이며, 비동기 방식의 함수를 사용한다.

function first(a,b,callback){
	let v=a*b;
	callback(v);
}

first(1,2,function(v){
	console.log(v);		//2
})
  • 위와 같이 아래에서 first 함수를 호출하는데 호출할 때 익명 함수를 parameter로 넘겨준다.
  • 그러면 first 함수에서는 그 함수 parameter를 callback이라는 이름으로 받고 있다.
  • first가 실행되면 a,b를 곱한 결과 값을 callback함수의 parameter로 넣어준다.
  • 여기서 callback함수는 아래의 익명 함수이므로 그 익명 함수가 실행된다.
  • 결과 값은 2(1*2)가 된다.

✍️ 함수를 쓰는 이유는

만약 node.js를 쓰면서 콜백을 받아야 하는 상황에 callback 함수를 사용하지 않는다면 콜백 함수의 과정이 끝나기 전에 다음 프로세스가 진행될 수 있다.

이러한 상황들을 막고 차례대로 수행하기 위해 callback 함수를 사용해 한다.

좋은 웹페이지 즐겨찾기