날짜 : 2018. 02. 20(화)
callback 함수는 callback 함수다. (callback 함수는 비동기가 아니다.(2))
이전글에서 정리한 것과는 다른 시각에서 정리를 해보았습니다.
한줄정리
callback은 synchronous 한것도 있으며 asynchronous 한것도 있다. 사용하는 함수의 공식문서를 잘 읽어 보아야 한다.
내용
-
생각을 하게 된 계기
- 이전 글에서 정리한 내용이 머리에 남아 있지 않았다.
- callback은 비동기 함수 인것 같다;;;;;;;
- Array.prototype.forEach( callback1 ) 와 setInterval(callback2, delay)는 다르게 동작한다;;;;;
-
callback 함수의 의미
In computer programming, a callback is any executable code that is passed as an argument to other code, which is expected to call back (execute) the argument at a given time. - Wikipedia(en)
"실행가능한 코드를 다른 코드에 전달하여 주어진 시간에 실행되는 것을 의미 한다. - 위키피디아" 에서 나온 말인데 결국은 함수에게 함수를 전달하여 서브루틴을 실행한다는 것을 의미한다.
-
callback의 종류
- synchronous callback (blocking callback) : 외부의 함수가 종료되기 전에 내부함수(서브루틴)이 종료 된다.
- asynchronous callback (deferred callback) : 외부의 함수가 종료된 후에 내부함수(서브루틴)이 종료된다.
-
javascript 에서 어느 것이 asynchronous 한 것인가?
- Ajax 통신 및 이벤트 처리가 비동기로 처리가 된다.
후기
- 이번글을 정리하면서 이전글을 삭제 하고 싶지만 반면교사를 삼기 위해서 삭제 하지 않으려 한다. ㅜㅜ
- 공식 문서와 스펙문서, 영문 위키피디아를 잘 해석한다면 다 해결되는 것 같다.
참고자료
- [wikipedia - callback function](https://en.wikipedia.org/wiki/Callback_(computer_programming)
'개발일지' 카테고리의 다른 글
취업 준비와 지금 하는 것. (0) | 2018.03.17 |
---|---|
어떻게 라이브러리를 접근해야 할까? (0) | 2018.03.03 |
getElementsByClassName와 querySelectorAll의 차이점 (1) | 2018.02.19 |
현재까지 블로그 글 관리에 대한 고민 (2) | 2018.02.12 |
자바스크립트로 상속의 상속(다중상속) (0) | 2018.02.09 |