티스토리 뷰

반응형
function testFun(callback) {
  callback();
}
testFun( v => console.log(a));

let a = "hello";

위와 같은 코드를 실행하면 에러가 난다.

var 로 바꾸면 undefined가 나온다. 

이런 경우 callback 을 이용하여 let a = 'hello' 의 위치를 바꾸지 않고도 에러가 나지 않게 할 수 있다.

 

function testFun(callback) {
  setImmediate(() => callback());
}
testFun( v => console.log(a));

let a = "hello";

이런식으로 callback의 실행을 비동기로 만들어 버리는 것이다.  콜백이라고 원래 기본적으로 비동기 형태인 것은 아니기 때문에 콜백은 이런식으로 비동기로 만들 수 있다.

 

 

'Javascript > 비동기 프로그래밍' 카테고리의 다른 글

Promise 활용1  (0) 2020.04.10
[Javascript] Promise #3 promise.all, promise.race  (0) 2020.04.09
[Javascript] Promise #2  (0) 2020.04.08
[Javascript] Promise #1  (0) 2020.04.07