반응형
일급객체
일급객체란 무엇일까?
다음의 조건을 만족하는 객체를 일급객체라 한다.
1. 무명의 리터럴로 생성할 수 있음.(즉, 런타임에 생성이 가능함.)
2. 변수나 자료구조(객체, 배열 등)에 저장할 수 있음.
3. 함수의 매개변수에 전달할 수 있음.
4. 함수의 반환값으로 사용할 수 있음.
자바스크립트에서 함수는 위의 조건을 모두 만족한다.
그래서 자바스크립트에서는 함수를 일급객체라고 할 수 있다.
다음 예제를 살펴보자.
함수가 일급객체라는 것은 함수를 객체와 동일하게 사용할 수 있다는 의미다.
객체는 값이므로 함수는 값과 동일하게 취급할 수 있다.
일급객체로서 함수가 가지는 가장 큰 특징은 일반 객체와 같이 함수의 매개변수에 전달할 수 있으며, 함수의 반환값으로 사용할 수도 있다는 것이다.
그렇다면 일반 객체와 함수는 차이가 없을까?
일반 객체는 호출할 수 없지만, 함수 객체는 호출을 할 수 있다는 차이점이 있고,
함수 객체는 일반 객체에는 없는 함수 고유의 프로퍼티를 소유한다.
다음 시간에는 함수 고유의 프로퍼티에 대해서 알아보자.
반응형
'Front-End > Javascript' 카테고리의 다른 글
[JavaScript] 한글 입력 시 이벤트가 두 번 호출되는 오류 (0) | 2024.01.27 |
---|---|
[JavaScript] 함수 객체의 프로퍼티 (0) | 2024.01.26 |
[JS] 생성자 함수에 의한 객체 생성 (0) | 2023.08.05 |
[JS] Property Attribute (1) | 2023.08.05 |
[JS] Event loop (0) | 2023.08.03 |