Q1.
결국, 다른 함수에 전달되는 함수라는 점에서 모든 성질이 발생한다고 보면 되는거야?
A1.
네, 맞습니다!
콜백 함수의 핵심은 **"다른 함수에 전달되는 함수"**라는 점입니다. 이 특성으로 인해 다음과 같은 성질들이 자연스럽게 발생합니다.
다른 함수에 의해 호출됨: 콜백 함수는 독립적으로 실행되는 것이 아니라, 다른 함수(주로 고차 함수)에 인자로 전달되어 해당 함수 내부에서 특정 시점에 호출됩니다.
특정 작업 완료 후 실행: 콜백 함수는 종종 비동기 작업이 완료된 후, 또는 특정 조건이 만족된 후에 실행되어야 할 로직을 담고 있습니다. 이는 콜백 함수를 전달받은 함수가 해당 작업을 완료한 후에 콜백 함수를 호출하기 때문입니다.
제어 흐름의 역전: 일반적인 함수 호출에서는 호출자가 함수의 실행 시점을 제어합니다. 하지만 콜백 함수를 사용하면 함수 호출자가 함수 실행 시점을 직접 제어하는 것이 아니라, 콜백 함수를 전달받은 함수에게 실행 시점을 위임하게 됩니다.
따라서, 콜백 함수의 핵심은 "다른 함수에 전달되는 함수"라는 점이며, 이로부터 다른 중요한 성질들이 파생된다고 볼 수 있습니다.
이러한 특징들을 통해 콜백 함수는 코드의 유연성을 높이고 비동기 작업 처리를 가능하게 하여 자바스크립트 프로그래밍에서 중요한 역할을 합니다.
Q2.
다른 함수에 전달된다는 것은, 파라미터로 전달된다는거지?
A2.
네, 맞습니다. 다른 함수에 전달된다는 것은 파라미터로 전달된다는 것을 의미합니다.
함수를 다른 함수에 전달할 때는 일반적으로 함수를 값으로 취급하여 해당 함수의 파라미터(매개변수)로 넘겨줍니다. 이렇게 전달된 함수는 콜백 함수의 역할을 수행하며, 필요한 시점에 호출되어 특정 작업을 수행하게 됩니다.
Q3.
그러면 한 문장으로 정리한다면, 콜백함수의 성질은 근본적으로 다른 함수에 파라미터로서 전달되기에 나타나는 것이라고 할 수 있겠네?
A3.
네, 정확합니다. 콜백 함수의 핵심적인 성질들은 모두 "다른 함수에 파라미터로서 전달된다"는 근본적인 특징에서 비롯된다고 할 수 있습니다.
'언어 및 도구들 공부 > Javascript' 카테고리의 다른 글
| 전역 함수와 메소드의 차이 (0) | 2024.08.31 |
|---|---|
| 멤버 변수와 전역 변수 (0) | 2024.08.31 |
| "동적"의 의미 (0) | 2024.08.31 |
| 얕은 복사, 참조 복사 복습 (요소들의 접근 다시 정리) (0) | 2024.08.31 |
| 요소들의 접근에 대해서 (0) | 2024.08.31 |