JavaScript/함수 3

함수 객체의 기본 프로퍼티

함수는 객체로 취급되므로 일반적인 객체의 기능에 호출됐을 때 정의된 코드를 실행하는 기능을 가지고 있다. 일반 객체와는 다르게 추가로 함수 객체만의 표준 프로퍼티가 정의되어 있다. function add(x,y){ return x+y; } console.dir(add); 결과를 살펴보면 add()함수는 arguments, caller, length 등과 같은 프로퍼티가 기본적으로 생성된 것을 알수 있다. 이러한 프로퍼티들이 함수를 생성할 때 포함되는 표준 프로퍼티다. - name 프로퍼티 : 함수의 이름을 나타낸다. 이름이 없는 익명 함수라면 name 프로퍼티는 빈 문자열이 된다. - caller 프로퍼티 : 자신을 호출한 함수를 나타낸다. - arguments 프로퍼티 : 함수를 호출할 때 전달된 인자..

JavaScript/함수 2021.02.08

[함수의 특성] 함수의 객체적 특성

1. 자바스크립트에서는 함수도 객체이다. 함수의 기본 기능인 코드 실행뿐만 아니라, 일반 객체처럼 프로퍼티들을 가질 수 있다. // add()함수를 생성할 때, 함수 코드는 함수 객체의 [[Code]] 내부 프로퍼티에 자동으로 저장된다. function add(x,y){ return x+y; } // add() 함수 객체에 result, status 프로퍼티 추가 add.result = add(3,2); // 일반 객체처럼 result 프로퍼티를 동적으로 생성하고 함수 실행 결과를 저장했다. add.status = 'OK'; console.log(add.result); // 5 console.log(add.status); // OK 위처럼 자바스크립트의 함수는 코드를 수행하는 역할과 자신의 프로퍼티를 가..

JavaScript/함수 2021.02.03

자바스크립트의 함수의 생성

함수 생성 방법 함수를 생성하는 3가지 방법. 각각의 방식에 따라 함수 동작 방식이 미묘하게 차이가 난다. 1. 함수 선언문 2. 함수 표현식 3. Function() 생성자 함수 1. 함수 선언문 방식 함수 선언문 방식으로 정의된 함수의 경우는 반드시 함수명이 정의 되어 있어야 한다. function add(x,y){ return x+y; } console.log(add(3,4)); 2. 함수 표현식 방식 함수도 하나의 값처럼 취급된다. 따라서 함수도 변수에 할당하는 것이 가능하다. 이런 방식으로 생성된 함수를 변수에 할당하여 함수를 생성하는 것을 함수 표현식이라고 말한다. - 익명함수 var add = function(x,y){ return x+y; }; // add는 함수 리터럴로 생성한 함수를 참..

JavaScript/함수 2021.02.02