반응형
일급객체란?
다른 객체들에 일반적으로 적용 가능한 연산을 모두 지원하는 객체를 가리킨다. 보통 함수에 매개변수로 넘기기, 수정하기, 변수에 대입하기와 같은 연산을 지원할 때 일급 객체라고 한다. (출처 : 위키)
쉽게 말해 특정 언어에서 객체를 값으로 취급하는 것을 말한다.
✅ 자바스크립트에서는 함수가 일급객체이다.
아래와 같은 조건을 만족하는 객체는 일급객체를 의미한다.
1. 변수나 상수에 저장 및 할당할 수 있어야 한다.
let fruits = function(){
return "apple";
}
console.log(fruits);
2. 파라미터(객체의 인자)로 전달할 수 있어야 한다.
let fruits = function(){
let apple = 10;
return apple;
}
let box = function(value){
console.log(value)
}
box(fruits());
3. 함수의 반환 값으로 사용될 수 있어야 한다.
function outer() {
return function() {
console.log("apple");
}
}
let start = outer();
start();
4. 동적으로 프로퍼티 생성이 가능하다.
function fruits(){
console.log("바구니가 비었습니다.")
}
fruits.apple = "사과";
fruits.banana = "바나나";
console.log(fruits.apple);
console.log(fruits.banana);
✅ 자바스크립트의 함수가 일급 객체이기 때문에 할 수 있는 것?
1. 고차 함수(forEach, filter, map, sort 등)
2. 클로저
3. 콜백 패턴
'🔥 🔥' 카테고리의 다른 글
[강의] 그림으로 쉽게 배우는 운영체제 - 0. 운영체제 들어가기 (0) | 2024.05.13 |
---|---|
yarn berry (0) | 2021.12.05 |
디바운스(Debounce)와 스로틀(Throttle) 알아보기 (0) | 2021.04.11 |
자바스크립트의 원시값(Primitive Type)과 참조값(Reference Type) (0) | 2021.04.06 |
배열에서 최솟값 찾기 | JS (0) | 2021.03.23 |