반응형
- 무명의 리터럴로 생성 가능 (런타임에 생성)
- 변수나 자료구조(객체, 배열 등)에 저장할 수 있음
- 함수의 매개변수에 전달 가능
- 함수의 반환 값으로 사용 가능
1. 무명의 리터럴로 생성, 변수에 저장
var hello = function () {
return '안녕하세요!';
};
2. 객체에 저장
var obj = { hello };
3. 함수의 매개변수에 전달할 수 있음
function repeat(func, count) {
for(var i = 0; i < count; i++) {
console.log(func());
}
4. 함수의 반환값으로 사용할 수 있다.
return function () {
console.log(`${count}번 반복 완료`);
}
}
var returnFunc = repeat(obj.hello, 5);
returnFunc();
=> 안녕하세요!
안녕하세요!
안녕하세요!
안녕하세요!
안녕하세요!
5번 반복 완료
- 함수가 일급 객체라는 것은 함수를 객체와 동일하게 사용할 수 있다는 의미
- 객체는 값이므로 함수는 값과 동일하게 취급 가능
- 변수 할당문, 객체의 프로퍼티 값, 배열의 요소, 함수 호출의 인수, 함수 반환문 등에서 사용
반응형
'프로그래밍 > JavaScript' 카테고리의 다른 글
09_자바스크립트 : 객체 생성자 함수 (0) | 2022.07.28 |
---|---|
08_자바스크립트 : scope ( 스코프체인, const, let, 함수 레벨 스코프) (0) | 2022.07.28 |
06_자바스크립트 : 함수 (화살표함수, 순수함수, 고차함수, 콜백함수, 재귀함수,...) (0) | 2022.07.28 |
05_자바스크립트 : 리터럴 객체와 속성 (0) | 2022.07.27 |
04_자바스크립트 : 연산자 (비교연산자, 논리연산자, ES11 operator) (0) | 2022.07.27 |