자바스크립트에서는 함수도 객체다!!!
즉, 함수의 기본 기능인 코드 실행뿐만 아니라 함수 자체가 일반 객체처럼 프로퍼티들을 가질 수 있다.
function add(x, y) {
return x + y;
}
add.result = add(1, 2);
add.status = 'OK';
console.log(add.result); // 5
console.log(add.status); // OK
정리하자면 자바스크립트의 함수란
- 리터럴에 의해 생성.
- 변수나 배열의 요소, 객체의 프로퍼티 등에 할당 가능.
var foo = 100;
var bar = function() { return 100;};
console.log(bar()); // 100
var obj = {};
obj.baz = function() { return 200;}
console.log(obj.baz()); // 200
- 함수의 인자로 전달 가능.
var foo = function(func) {
func();
};
foo(function() {
console.log('Function can be used as the argument');
};
- 함수의 리턴값으로 리턴 가능.
var foo = function() {
return function() {
console.log('this function is the return value');
}
};
var bar = foo();
bar();
- 동적으로 프로퍼티를 생성 및 할당 가능.
'프로그래밍 > Java script' 카테고리의 다른 글
함수 생성 방법 (0) | 2019.05.29 |
---|---|
자바스크립트 데이터 타입2 (0) | 2018.08.04 |
자바스크립트 데이터 타입1 (0) | 2018.08.04 |
자바스크립트(JavaScript)란? (0) | 2018.07.21 |
WRITTEN BY
- 김치치즈스마일
세계정복!
,