반응형
콜백함수라는 것이 나를 이렇게 두고 두고 괴롭힐줄 몰랐다. 두고두고 괴롭힌 개념이 몇가지 있는데, 그 중 갑자기 생각난 개념이 바로 이 콜백함수이다. 콜백함수를 다시 한번 떠올려 보자면, 모른다고 할수는 없지만, 부끄럽게도 안다고 할수도 없는것 같다. 그렇기에, 콜백함수가 무엇일지 한번 정리해본다.
콜백함수에 대한 각종 정의, 설명, 뜻, 블로그를 수없이 본거 같은데, 그래도 온전히 이해가 안되고 있다는 느낌이다. 그래서 콜백함수를 공부하며 그것들을 이곳에 모아보기 해보았다.
이름 그대로 다시 호출되는 함수.
- 나중에 호출되는 함수.
- 전화를 다시하다.
- 콜백함수는 다른 함수의 매개변수로 함수를 전한달하고, 매개변수로 전달한 함수가 다시 호출되는 것을 의미(겁나 어렵다.)
- 다른 함수의 인자로 이용되는 함수, 어떤 이벤트에 의해 호출되어지는 함수.(그나마 제일 명료하다)
- 피호출자가 호출자를 다시 호출하는것
- 콜백함수는 클로저다(? 이 설명이 이해가 안되는것을 보니 다음til은 클로저가 될것 같다)
- 특정한 시점에 호출되는 함수.
역시나 다시 그 뜻을 찾아봐도, 온전히 이해가 안되는 것은 마찬가지인거 같다. 그래서 좀더 이해를 갖기 위하여. 콜백을 왜 쓰는지 정리하였다.
콜백을 사용하는 이유
- 비동기적 프래그래밍을 가능하게 해준다.
- 싱글스레드의 코드가 멈추지 않게 해준다.
- 브라우저에서 사용자에 의한 랜덤한 이벤트 발생시에 원하는 내용만을 콜백함수에 전달하도록 처리한다.
- 서버에 요청을 보냈을때, 응답이 언제 올지 알수 없기에, 서버에 대한 응답처리를 비동기로 처리하기위해 콜백함수를 사용한다.
- 마찬가지로 node의 파일시스템처럼 파일을 읽고 쓰는시간이 얼마나 소요될지 알수 없기에 콜백함수를 사용한다.
콜백 뜻을 정리 해보니, 그 뜻보다는 콜백을 왜 쓰는지만 더 뚜렷하게 알게 된 것 같다.
다음 글에서 코드적인 공부도 정리해볼예정.
반응형
'개발.코딩' 카테고리의 다른 글
자바스크립트 javascript Dom querySelector, querySelectorAll 차이 (0) | 2021.07.16 |
---|---|
디버깅(Debugging)이란? (0) | 2021.06.11 |
클로저(closure) 뜻 (0) | 2021.06.10 |
javascript(자바스크립트) 3가지 this (0) | 2021.06.09 |
Callback함수 연습하기 (0) | 2021.06.08 |