일급 객체(First Class Citizen)
- Frist Class Object
- 자바 스크립트의 함수는 일급 객체이다. -> 함수를 다른 함수의 인자로 줄 수 있다.
- 함수형 프로그래밍에서 통용된다.
일급 객체의 4가지 조건
1) 익명의 리터럴으로 생성 가능
2) 객체가 변수나 자료 구조에 저장이 가능 -> 다른 객체의 프로퍼티로 사용이 가능하다.
3) 객체를 다른 함수의 인자로 전달이 가능
4) 함수의 리턴 값으로 객체 사용 가능
함수의 기능 변경 방법
1. 기존 함수 수정
2. 기존 함수 + 기능 추가로 새로운 함수 생성
3. 함수를 추상화 시켜서 인자로 받은 후 사용한다. -> 확장성 생각하기
콜백 함수(Callback Function)
- 매개변수를 통해서 다른 함수의 내부로 전달되는 함수
- 고차함수와 결합이 된다.
- 콜백 함수를 받은 고차 함수는, 함수 내부에서 콜백 함수를 호출할 수 있다.
고차 함수(High Ordered function)
- 매개변수를 통해서 콜백 함수를 전달받는 함수
- 함수를 인자로 전달받거나 결과로 반환하는 함수
'프로그래밍 > JS' 카테고리의 다른 글
[Javascript] JS Engine, Event Loop, this 객체 (0) | 2022.10.05 |
---|---|
[JavaScript] 실행 컨텍스트, 렉시컬 환경, 클로저 (0) | 2022.07.05 |
[JavaScript] 함수 호출, 즉시 실행 함수, 중첩 함수, 스코프 (0) | 2022.07.05 |
[JavaScript] 자바스크립트 함수, 함수 정의방법(선언문, 표현식, 화살표) (0) | 2022.07.05 |
[JavaScript] 원시 값과 객체, 유사 배열 객체 (0) | 2022.07.05 |