이다닷

[Frontend Study] Day 10 - CallBack 함수란? 본문

Frontend Study

[Frontend Study] Day 10 - CallBack 함수란?

이다닷 2024. 4. 12. 18:00

다른 함수의 실행이 끝났을 때 실행되는 함수 => CallBack 함수

 

CallBack 함수란?


 JavaScript에서 함수는 object이다. 그래서 함수가 다른 함수의 인자로 사용될 수 있고, 또 어떤 함수에 의해 리턴될 수도 있다.

 ===> 함수를 등록하고, 어떤 이벤트가 발생했거나 특정 시점에 도달했을 때 시스템에서 호출하는 함수이다.

 

예제1)

함수 Func를 호출했을 때, 밑에 있는 특정 callBack 함수가 실행된다.

 

예제2)

introduce 함수를 실행하면, callback 자리를 새로운 함수 function(name)으로 지정해주면서 fullName에 저장된 이름이 callback(fullName) 함수의 인자로 들어가서 실행된다.

 

 

필요한 이유


동기 / 비동기

1. 동기

  - 하나의 요청이 완료되면 다른 요청을 실행하는 방식

2. 비동기

  - 어떤 요청이 오면 완료가 되기 전에 다음 요청을 실행하는 방식

 

 -> 비동기 방식으로 작성된 함수를 동기 처리하기 위해서 callBack 함수 필요

 -> 때로는 가독성이나 코드 재사용을 위해서도 사용된다.

 

동기/비동기 방식으로 callBack함수를 사용할때에는 어려움이 많다고 생각이 된다.

최근 동기/비동기 방식을 처리하는 방법에는 async/await 또는 promise로 대체 하는 방법을 많이 사용하므로, 추후에는 그런 방법을 사용해 보는 것이 좋을 것 같다.