함수가 일급객체라서 고차함수로 활용가능하다.
🤔 벌써 모르는 단어가 두 개나 있다. 일급객체❓ 고차함수❓
일급객체는 first-class citizens
, first-class type
, first-class object
, first-class value
등 등...
굉장히 많은 이름을 가지고 있다.
type
을 전달, 반환, 할당할 수 있는 경우 해당 type
을 1급 객체로 프로그래밍 언어에서는 간주하고 있다.
현재 자바스크립트를 배우고 있으니 자바스크립트 기준으로 생각해보면, 함수가 떠오른다!
함수는 변수에 할당이 가능하면서, 다른 함수의 전달인자로 전달도 가능하다. 그리고 다른 함수의 결과로 함수가 반환이 되기도 한다.
이렇게 정리하고 보니, 함수가 일급객체라서 고차함수로 활용가능하다. 라는 말에 가졌던 의문이 조금은 해결된 듯 하다.
다른 함수의 전달인자로 전달도 되고 다른 함수의 결과로 리턴도 되는 함수는 일급객체이다.
일급객체의 특징을 함수가 가졌기 때문에 함수를 전달인자로 받고 함수를 리턴하는 함수인 고차함수로도 활용할 수 있다는 이야기구나!
참고 블로그 👉 Javascript에서 왜 함수가 1급 객체일까요?
혹시나 잘못된 정보가 있다면 댓글로 알려주세요 ! 저의 성장의 큰 도움이 될 것 같습니다.🌱