안녕하세요. 송기석입니다.

 

3월달이 왔습니다. 저녁에는 차가운 바람으로 아직 춥지만 낮에는 봄이 오는 것이 느껴집니다.

 

콜백

 

다음은 예제는 콜백의 동작을 보여주기 위한 코드로 작성 하였습니다.

 

function func1() {

 

  var temp = 10;

 

  return temp;

}

 

function func2 (data) {

 

  var temp2 = 10 + data

 

  return temp2;

};

 

function func3(data, cb) {

  var temp2 = 10 + data

 

  cb(temp2);

}

 

var test1 = func1();

var test2 = func2(test1);

 

console.log('output 1 = ' + test2);

 

func3(test1, function(data) {

 

  console.log('output 2 = ' + data);

});

 

콜백을 사용하면 동기화가 필요한 서버와 클라이언트간의 통신의 응답성을 높일 수 있습니다. 일반적인 경우 동기화에 필요한 응답이 올 때까지 기다려야 합니다. 이때 네트워크나 서버가 느리다면 클라이언트는 멈춰서 기다려야 하는 상태가 될 것입니다. 이런 작업을 서버로 요청을 비동기식으로 하고 서버의 응답이 왔을 때 호출되는 콜백함수를 제공하면 클라이언트는 멈춤 상태로 빠지지 않습니다.