자바스크립트에서는 크게 세가지의 함수 선언 방식이 있다.
1. 함수 리터럴 방식
- function keyword로 시작.
- function keyword, 함수명(필수가 아닌 선택사항), 매개변수 리스트, 함수 몸체로 구성.
function add(x, y) { // 함수명인 add는 선택사항.
return x + y;
}
1-1. 함수 선언문 방식
- 함수 리터럴 방식과 형태는 같으나 함수명이 반드시 정의되어 있어야 함.
function add(x, y) { // 함수명인 add는 필수 정의.
return x + y;
}
2. 함수 표현식
- 함수 리터럴 방식으로 함수를 만들고, 이를 변수에 할당하여 함수를 생성하는 방식.
- 함수명은 선택 사항이며, 보통 사용하지 않음.
- 함수 표현식에 사용된 함수명은 외부 코드에서 접근이 불가능.
var add = function(x, y) { // add는 함수 변수이지 함수명이 아님.
return x + y;
};
var plus = add;
console.log(add(1, 2)); // 3
console.log(plus(2, 3)); // 5
var add = function sum(x, y) { // add는 함수 변수이지 함수명이 아님.
return x + y;
};
console.log(add(1, 2)); // 3
console.log(sum(1, 2)); // Uncaught ReferenceError : sum is not defined
3. Function() 생성자 함수를 통한 방식
- 자바스크립트의 함수도 Function()이라는 기본 내장 생성자 함수로 부터 생성된 객체.
- 잘 쓰지 않음.
var add = new Function('x', 'y', 'return x + y');
console.log(add(3, 4) // 7
[출처] 인사이드 자바스크립트
'프로그래밍 > Java script' 카테고리의 다른 글
함수도 객체다! (0) | 2019.05.29 |
---|---|
자바스크립트 데이터 타입2 (0) | 2018.08.04 |
자바스크립트 데이터 타입1 (0) | 2018.08.04 |
자바스크립트(JavaScript)란? (0) | 2018.07.21 |
WRITTEN BY
- 김치치즈스마일
세계정복!
,