JS 11-4 arguments
function
demo15.html
function의 입력
argument 인자
인자(argument)는 함수로 유입되는 입력 값을 의미함
어떤 값을 인자로 전달하느냐에 따라서 함수가 반환하는 값이나
메소드(method)의 동작방법을 다르게 할 수 있음
- method(메소드): Java를 포함한 객체지향 프로그래밍 언어에서
클래스 내부에 정의된 함수(객체의 함수)를 method라고 함
기본적으로는 함수와 유사한 의미로 사용됨
C++에서는 함수 / Java 관련은 메소드 라는 느낌
function get_argument(arg) {
return arg;
}
// (arg)는 입력 부분이 되고
// arg;는 출력 부분이 됨
alert(get_argument(1)); //1
alert(get_argument(2)); //2
//get_argument(1)은 위에서 정의된 함수를 실행함
//괄호안의 1은 get_argument로 1이라는 값을 전달하겠다는 의미
//이때 위에서 정의된 (arg) 구문에 의해
//변수 arg의 값으로 숫자 1이 함수 안으로 전달됨
//이 변수 arg는 함수 get_argument 안에서만 유효하게 됨
전달 방식은 아래와 같음
이 맥락에서
arg는 매개변수(parameter)라고 부름
arg로 전달한 값은 인자(argument)라고 부름
두가지를 섞어 부르는 경우가 많지만 엄격하게 보자면
값 자체는 argument(인자) / 그 값을 받는 변수는 parameter(매개변수)
:개념적으로 argument는 입력 / return은 출력 이 됨
+추가
return값에 수식이 들어가면?
function get_argument(arg) {
return arg * 1000; //곱하기 1000을 넣어봄
}
alert(get_argument(1)); // 1000
//arg값 지정은 전 예제와 같고 return하면서 수식대로 1000을 곱함
arguments 복수의 인자
그럼 여러개의 입력 값을 받고 싶다면?
function get_argument(arg1, arg2) {
return arg1 + arg2;
}
alert(get_argument(10, 20)); //30
alert(get_argument(20, 30)); //50
//parameter와 argument가 두개로 늘어남
//함수를 호출 할 때 전달한 argument 10, 20은
//함수의 선언부의 arg1, arg2에 차례대로 할당됨
//이렇게 전달된 값이 내부 함수로 전달되어 더해진 후 return
위 함수에서 관계는 아래와 같음
현재까지 배운 내용으로는
예제와 같이 argument는 여럿을 받았지만
retrun값은 하나만 나오는 한계가 있음
-
get_arguments(arg1, arg2)
alert(get_arguments(10, 20));get_argument(arg1, arg2)
alert(get_argument(10, 20));:둘다 작동함..
함수명의 S유무는 무관계? or 둘다 지정되어있는 함수?:몰?루 못찾겠
전에 찾아본 함수명의 정의와 기능에 대해 다시 알아보자