[JS/Node] 고차 함수

Sehyeon Park·2022년 5월 16일
0

일급 객체(first-class citizen)의 세 가지 특징을 설명할 수 있다.
고차 함수(higher-order function)에 대해 설명할 수 있다.
고차 함수를 자바스크립트로 작성할 수 있다.


First-class citizen

특별한 대우를 받는 함수

자바스크립트에도 특별한 대우를 받는 일급 객체(first-class citizen)가 있습니다.
대표적인 일급 객체 중 하나가 함수입니다.
(자바스크립트가 나온 시점을 고려했을 때,) 자바스크립트에서 함수는 아래와 같이 특별하게 취급됩니다.

  • 변수에 할당(assignment) 할 수 있다.
  • 다른 함수의 인자(argument)로 전달될 수 있다.
  • 다른 함수의 결과로서 리턴될 수 있다.

함수를 변수에 할당할 수 있기 때문에, 함수를 배열의 요소나 객체의 속성값으로 저장할 수 있습니다. 이는 함수를 데이터(string, number, boolean, array, object)를 다루듯이 다룰 수 있다는 걸 의미합니다.


고차함수란...?

고차 함수(higher order function)는 함수를 인자(argument)로 받을 수 있고, 함수의 형태로 리턴할 수 있는 함수입니다.

이때 다른 함수(caller)의 인자(argument)로 전달되는 함수를 콜백 함수(callback function)라고 합니다. 콜백 함수의 이름은, 어떤 작업이 완료되었을 때 호출하는 경우가 많아서, 답신 전화를 뜻하는 콜백이라는 이름이 붙여졌습니다.

profile
후회하지 않는 개발자가 되자!

0개의 댓글