프로그래밍 언어/JavaScript

[자바스크립트 필기] #12 - 함수와 일급 객체

2021. 8. 5. 17:36

 

*이 필기는 웹 프로그래밍 튜토리얼에서 보고 작성합니다. 

 

1. 일급 객체 

다음 조건을 만족하는 객체를 일급 객체라 한다. 

  • 무명의 리터럴로 생성 가능 - 즉, 런타임에 생성 가능 
  • 변수나 자료구조(객체, 배열 등)에 저장할 수 있음
  • 함수의 매개변수에 전달할 수 있음 - 가장 큰 특징
  • 함수의 반환값으로 사용 가능
// 함수는 무명의 리터럴로 생성할 수 있다. 
// 함수는 변수에 저장할 수 있다. 
const increase = function (num) {
    return ++num;
};

// 함수는 객체에 저장할 수 있다. 
const predicates = { increase };

// 함수의 매개변수에 전달할 수 있다.
// 함수의 반환값으로 사용할 수 있다.
function makeCounter(predicate) {
    let num = 0;

    return function () {
        num = predicate(num);
        return num;
    };
}

// 함수는 매개변수에게 함수를 전달할 수 있다.
const increaser = makeCounter(predicates.increase);
console.log(increaser());
console.log(increaser());

 

2. 함수 객체의 프로퍼티 

arguments 프로퍼티
이 프로퍼티의 값은 arguments 객체이다. 이 객체는 함수 호출 시 전달된 인수들의 정보를 담고 있는 순회 가능한 유사 배열 객체이고, 함수 내부에서 지역 변수처럼 활용될 수 있다. 
length 프로퍼티
함수 매개변수의 개수를 가리킨다. 
name 프로퍼티 
함수 이름을 나타낸다. 
__proto__ 접근자 프로퍼티 
모든 객체는 [[Prototype]] 이라는 내부 슬롯을 가진다. 이는 상속을 구현하는 프로토타입 객체를 가리킨다. __proto__는 이 내부 슬롯에 접근하기 위해 사용하는 프로퍼티이다. 
prototype 프로퍼티 
생성자 함수로 호출할 수 있는 함수 객체가 소유하는 프로퍼티이다. 

 

여기까지 입니다 - 틀린 점이 있다면 꼭 지적해주세요!

 

 

 

'프로그래밍 언어/JavaScript' 카테고리의 다른 글
  • [자바스크립트 필기] #14 - 빌트인 객체
  • [자바스크립트 필기] #13 - 프로토타입
  • [자바스크립트 필기] #11 - 생성자 함수와 객체 생성
  • [자바스크립트 필기] #10 - let, const 키워드
SpaceCowboy
SpaceCowboy
공부한거 기록하는 블로그입니다!!
SpaceCowboy
공부한거 기록하는 블로그
SpaceCowboy
전체
오늘
어제
  • 분류 전체보기
    • 프로그래밍 언어
      • C Programming
      • JavaScript
    • Computer Science
      • 자료구조
      • 알고리즘
      • 객체지향
    • 프레임워크
      • Nest.js
      • TypeORM
    • Web Programming
    • 블록체인
      • 기초
    • 데브옵스
      • Git
      • Docker

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 자료구조필기
  • 자바스크립트챌린지
  • typeorm0.3
  • 자바스크립트
  • 자바스크립트필기
  • 이중연결리스트
  • CSS
  • TypeORM
  • 재귀
  • softDelete
  • 자료구조
  • typeormseeding
  • 복습
  • 논리삭제
  • HTML
  • nestjs
  • 자바스크립트 필기
  • typeorm3.0
  • JS
  • customrepository

최근 댓글

최근 글

hELLO · Designed By 정상우.
SpaceCowboy
[자바스크립트 필기] #12 - 함수와 일급 객체
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.