함수의 구조
function 함수명( [인자...[,인자]] ){
//코드
//return 반환값
}
- 함수(function)란 하나의 로직을 재실행 할 수 있도록 개발자가 정의하는 것으로, 코드의 재사용성을 높여준다.(유지, 보수의 용이함)
- 이때 함수명이란 것은 개발자가 지정하는 문자열이다.
함수의 호출
numbering();
출력(return)
함수 내에서 사용한 return은 return 뒤에 따라오는 값을 함수의 결과값으로 반환한다. 동시에 함수를 종료시킨다.
function 음료수(){
return '밀키스';
return '환타';
return '콜라';
}
alert(음료수());
return 뒤에 가장 첫번째로 따라나오는 값은 '밀키스'이다. 이 값이 결과값으로 반환되며, 동시에 함수가 종료되므로 '환타'와 '콜라'는 alert에 출력되지 않는다.
인자(argument)와 매개변수(parameter)
인자(argument)란 함수로 유입되는 값을 의미하며, 매개변수란 인자가 저장되는 저장소의 역할을 한다.
function get_argument(arg){
return arg;
}
alert(get_argument(1));
alert(get_argument(2));
5행의 get_argument(1)은 1행에서 3행 사이에 정의된 함수를 실행하는 구문이다. 5행의 1은 get_argument로 1이라는 인자를 전달하겠다는 의미다. 이 때 1행에 정의된 (arg) 구문에 의해서 매개변수 arg의 값으로 숫자 1이 함수 안으로 전달된다. 이 매개변수 arg는 함수 get_argument 안에서만 유효하다.
function get_arguments(arg1, arg2){
return arg1 + arg2
}
alert(get_arguments(10, 20));
alert(get_arguments(20, 30));
다음과 같이 복수의 인자와 매개변수를 설정해줄 수 있다. 이러한 함수를 호출 할 때 전달한 인자 10과 20은 함수의 선언부(1행)의 arg1, arg2에 차례로 할당된다. 이렇게 전달된 인자는 함수 내부로 전달되서 더해진 후에 반환된다.
함수를 정의하는 다양한 방법
const numbering = function (){
i = 0;
while(i < 10){
document.write(i);
i += 1;
}
}
numbering();
함수전체를 리터럴값으로 numbering에 대입시키는 정의방법이다.
(function (){
i = 0;
while(i < 10){
document.write(i);
i += 1;
}
})();
일회성으로 정의, 호출하는 경우 이름을 정의하지않아도 되는 익명함수를 작성하기도 한다.
'자바스크립트 개념정리' 카테고리의 다른 글
표현식 & 문 (모던 자바스크립드 Deep Dive 5장) (0) | 2022.10.14 |
---|---|
배열(array) (0) | 2022.10.12 |
연산자의 종류 (0) | 2022.10.11 |
조건문(Conditional statements) (0) | 2022.10.11 |
변수선언 & 상수선언 (0) | 2022.10.07 |