Javascript/기초공부
[Javascript: 값으로서의 함수] 속성값 / 메소드 / First-class citizen
jisun_rea
2020. 3. 13. 16:42
값으로서의 함수
자바스크립트에서는 함수도 객체이다. 즉, 값이다.
함수 역시 변수에 담을 수 있는 속성을 갖고있다는 뜻이다.
// 변수 a에 담겨진 함수
function a(){} // var a = function(){};
// 객체의 속성값(b)에 담겨진 함수(메소드)
a = {
b:function() {}
}
다른 함수의 인자로 전달될 수 있다.
// 첫번쨰 인자는 함수, 두번째 인자는 함수의 파라미터값
function cal(func, num){
return func(num)
}
function increase(num){
return num+1
}
function decrease(num){
return num-1
}
alert(cal(increase, 1)); // 2
alert(cal(decrease, 1)); // 0
* 함수의 리턴값, 배열의 값으로 사용할 수 있다.
* 변수, 매개변수, 리턴값의 용도로 사용될 수 있는 데이터를 First-class citizen[object]라고 한다.