Kim-Baek 개발자 이야기

Javascript Function Object (자바스크립트 함수 객체) 본문

개발/JavaScript

Javascript Function Object (자바스크립트 함수 객체)

킴백 개발자 2020. 10. 3. 11:17

Function Object

 

  • 자바스크립트에서는 함수도 객체이다.

 

  • 함수에 정의된 로직 말고도 객체처럼 프로퍼티들을 가질 수 있다.

 

 function add(x, y){
   return x+y;
 }
 add.status = "good";

 console.log(add(3,3));  //6
 console.log(add.status);  //good

함수를 생성할 때 만들어 지는 함수 코드는 함수 객체의 [[Code]] 내부 프로퍼티에 자동으로 저장된다.

 

함수는 일급 객체이다

 

  • 자바스크립트에서는 함수도 일반 객체처럼 취급된다.

 

  • 따라서 일급 객체를 만족하는 특징들이 있다.

 

  • 리터럴에 의한 생성

 

  • 변수나 배열의 요소, 객체의 프로퍼티 등에 할당 가능

 

  • 함수의 인자로 전달 가능

 

  • 함수의 리턴값으로 리턴 가능

 

  • 동적으로 프로퍼티를 생성 및 할당 가능

 

자바스크립트는 함수가 가지는 일급 객체의 특징으로 함수형 프로그래밍이 가능하다. 즉 함수가 일반 객체처럼 값으로 취급된다.

 

반응형
Comments