Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

사고쳤어요

JavaScript의 함수와 일급객체 본문

웹 풀스택

JavaScript의 함수와 일급객체

kevinmj12 2025. 3. 27. 17:57

JavaScript의 함수는 일급객체의 특징을 모두 갖고있다.

일급객체가 무엇인지, 그리고 어떤 특징을 갖고 있는지 자세히 알아보자.

 

일급객체

일급객체란 다른 객체들에 일반적으로 적용 가능한 연산을 모두 지원하는 객체이다

위 설명만으로는 어떠한 객체가 일급객체인지 판단하기 어려운데, 다음 조건을 만족하면 일급객체임을 알 수 있다.

  • 일급객체는 다른 함수의 실제 매개변수가 될 수 있다.
  • 일급객체는 함수의 반환값이 될 수 있다.
  • 일급객체는 할당명령문의 대상이 될 수 있다.
  • 일급객체는 동일비교 대상이 될 수 있다.
// 다른 함수의 실제 매개변수가 될 수 있다.
function a(fun) {
  return fun() + 1;
}

function b() {
  return 5;
}

console.log(a(b)); // 6

// 다른 함수의 반환값이 될 수 있다.
function c(number) {
  return number + d();
}

function d() {
  return 3;
}

console.log(c(1)); // 4

// 다른 할당명령문의 대상이 될 수 있다.
const e = function () {
  return 1;
};

console.log(e()); // 1

// 동일비교의 대상이 될 수 있다.
function f() {}
const g = f;

console.log(g === f); // true