CallBack 함수
콜백 함수는 굉장히 어려운 함수입니다. 프로그래밍 상에서의 콜백 함수는 매개변수로 넘겨받은 함수는 일단 넘겨받고,
때가 되면 나중에 호출(called back)한다는 것이 콜백함수의 개념인데, 쉽게 말하면, 특정 함수(이벤트)가 끝나면 따라서 실행되는 함수를 의미합니다.
자바 스크립트에서 함수란 다른 언어에 비해 특별한 특징을 가지고 있습니다.
변수나 데이터안에 담길 수 있다
매개변수로 전달 할 수 있다
반환 값으로 사용할 수 있다
실행도중에 생성될 수 있다
function a(){
console.log('a');
}
var a = function (){
console.log('a');
}
위의 예시의 구조는 약간 다르지만, 사실 같은 코드입니다. 결과 또한 'a'라는 문자로 동일하게 호출됩니다.
함수를 변수로 사용할 수 있는 자바스크립트에선 a라는 변수가 'a'라는 문자를 호출하는 함수를 변수로 선언한 것입니다.
우리는 이러한 특징 중 2번째, 자바 스크립트의 함수는 매개변수로 전달 할 수 있다는 특징을 이용해서 Callback 함수를 사용할 수 있습니다.
var a = function (){
console.log('a');
}
function slowfunc(callback){
callback;
}
slowfunc(a);
slowfunc이라는 함수는 인자로 callback을 선언 후 매개 변수 값으로 함수인 a를 넣었습니다.
이렇게 됐을 때 slowfunc 함수가 호출된다면, slowfunc -> a 순으로 함수가 호출되서 실행되게 됩니다.
function add(a,b){
return a+b;
}
function Result(value){
console.log(value);
}
Result(add(1,2));
2023-03-17 내용 추가
코드 이해
Node.js로 웹 브라우저가 접속을 시도할 때마다 createServer에 콜백함수를 Node.js가 호출합니다.
그 인자들로는 request - 요청할 때 전달하는 내용들, response - 응답할 때 웹 브라우저에 전송하는 내용
var app = http.createServer(function (request, response) {
. . .
}
'Node.js' 카테고리의 다른 글
[Node.js] 9. form (0) | 2023.03.17 |
---|---|
[Node.js] 8. PM2 (0) | 2023.03.16 |
[Node.js] 6. 트리(Tree) (0) | 2023.03.15 |
[Node.js] 5. synchronous & asynchronous(동기,비동기) (0) | 2023.03.13 |
[Node.js] 4. 메인 페이지 구현 (0) | 2023.03.12 |