값으로서의 함수
자바스크립트에서는 함수도 객체이다. 즉, 값이다.
함수 역시 변수에 담을 수 있는 속성을 갖고있다는 뜻이다.
// 변수 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]라고 한다.
'Javascript > 기초공부' 카테고리의 다른 글
[Javascript: 클로저(closure)] 내부함수, 외부함수, (0) | 2020.03.14 |
---|---|
[Javascript: 콜백(Callback)] 콜백의 정의 / 비동기 처리 / Ajax (0) | 2020.03.13 |
[Javascript: 유효범위] 전역변수 / 지역변수 / 전역변수 사용법 / 유효범위의 대상(함수) / 정적 유효범위 (0) | 2020.03.13 |
[Javascript: 정규표현식(Regular expression)] 패턴 / 리터럴 / 객체 생성자 / RegExp 객체 사용 / 문자열 메소드 / 옵션 / 캡처 / 치환 (0) | 2020.03.11 |
[Javascript: 모듈(Module)] 모듈화 / 라이브러리 (0) | 2020.03.11 |