JavaScript - First-Class and Higher-Order Functions

신동환·2022년 4월 20일

js

목록 보기
13/18

First-Class vs Higher-Order Functions

  1. First-Class Functions
    • JavaScript는 함수를 First-Class citizens으로 처리한다

      First-Class citizens?
      변수나 데이터에 할당이 가능해야 하며
      객체를 인자로 넘길 수 있고
      객체의 리턴값으로 리턴할 수 있는 것을 First- Class citizens이라 부른다.

    • 위의 정의를 풀어서 쓰자면 JavaScript는 함수를 변수나 데이터에 할당이 가능하며 인자로 넘길 수 있고 리턴 값으로 처리가 가능하다
    • 그래서 함수를 단순한 값으로 취급한다는 의미이기도 하다
    • 함수는 단지 또 다른 유형의 객체이다

  1. Higher-Order Functions
    • 함수를 인자로 전달 받거나 함수를 리턴하는 함수를 칭한다
    • 이것이 가능한 것은 JavaScript의 함수는 First-Class Functions이기 때문에 가능하다

      ex) addEventListener가 Higher-Order Functions 중 하나

profile
안녕하세요! Hello, World!

0개의 댓글