새소식

JavaScript

[코어 자바스크립트] 콜백함수

  • -

콜백함수?

콜백함수는 다른 코드의 인자로 넘겨주는 함수이다.

다른 코드에게 인자로 넘겨줌으로써 그 제어권도 함께 위임한다.

  ➡️콜백 함수의 제어권을 넘겨받은 코드는 콜백 함수를 호출할 때 인자에 어떤 값들을 어떤 순서로 넘길 것인지에 대한 제어권을 가진다.

 

 

콜백함수의 this

 

콜백함수도 함수이기 때문에 기본적으로는 this가 전역객체를 참조한다. 하지만 제어권을 넘겨받을 코드에서 콜백 함수에 별도로 this가 될 대상을 지정한 경우에는 그 대상을 참조한다.

 

콜백 함수로 어떤 객체의 메서드를 전달하더라도 그 메서는 메서드가 아닌 함수로 호출 된다. 

 

(1) this에 다른 값 바인딩 하기

- 전통적으로는 this를 다른 변수에 담아 콜백 함수로 활용할 함수에서는 this 대신 그 변수를 사용하게 하고 이를 클로저로 만든다.

-bind 메서드 활용하기

(여기서 call/apply가 아닌 bind를 사용하는 이유 : call/apply는 함수를 호출하는 함수, bind는 bound를 리턴 해주기 때문 )

 

 

 

콜백지옥과 비동기 제어

 

https://gonggongnote.tistory.com/54 

 

[기술면접]비동기 호출 callback, promise, async/await

11월 3일 , 이노베이션캠프 끝을 앞두고 모의면접을 봤다.🥲 생각보다 어려운 분위기에서 이루어진 면접은 아니라 최대한 많은 피드백을 받아들이고 수정하고자 했다 ! 초반엔 대부분 이력서 및

gonggongnote.tistory.com

 

 

 

Ref

정재남 <코어 자바스크립트>

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.