TIL 10 | Javascript_매개변수와 인수

Moon ·2021년 6월 8일
0

Javascript

목록 보기
7/16
post-thumbnail

매개변수와 인수 (parameter & argument)

1) 매개변수와 인수

함수를 선언할때는 매개변수(parameter) 그리고 함수를 호출할때는 인수(argument)이다.
매개변수는 외부로부터 들어오는 값을 담아 함수 내부에서 사용하도록 하는 변수의 역할을 한다. 이해하기 어렵다면, 일단 함수 외부로부터 들어온 값이 담길 '자리' 혹은 '변수의 이름'으로 기억하자.
반면, 인자(argument)는 그 자리에 들어갈 구체적인 값을 뜻한다.

function a(parameter){
  console.log(parameter);   // 함수 선언
 }
 a('argument')              // 함수 호출

위의 코드를 살펴보고 설명하자면,
함수 a를 호출 시 소괄호에 넣은 'argument'문자열은 함수a를 선언할 때 소괄호에 넣은 parameter와 연결된다.
따라서 parameter는 argument의 값을 갖게되고 (parameter = 'argument') console.log 안의 소괄호도 console.log('argument') 로 된다.
parameter는 변수와 같은 특성을 가진다.

2) 매개변수와 인수의 갯수

함수가 하나의 매개변수와 하나의 인수만 갖는것은 아니다.
매개변수와 인수의 개수는 일치 하지 않아도 된다.

만약 매개변수의 갯수가 더 많을 땐 어떻게 처리될까?

위처럼 부족한 인수의 갯수의 자리는 undefined로 나오는것을 확인 할 수 있다.

(*console.log(arguments);의 소괄호에 있는 arguments는 따로 선언해주지 않았더라도 function함수에서만 사용가능하며 화살표 함수에서는 x.
또한 arguments의 값으로는 넣었던 인수들을 배열 모양으로 나타내준다.)

그렇다면 !
만약 인수의 갯수가 더 많을 땐 어떻게 처리될까?
그 경우엔 매개변수 수만큼만 나오고 나머지 인수는 출력되지 않는다 (무시된다!).

Quiz>
매개변수로 x,y,z를 받아 곱한 값을 반환하는 multiply 함수를 '화살표 함수'로 표현해 보세요.

Answer>

const multiply = (x,y,z) => {
return xyz;
}

혹은

const multiply = (x,y,z) => xyz;

화살표 함수에서 중괄호 {과 return이 이어지면 생략 가능하다.

3) 또 다른 변수 사용

함수 내부에서 매개변수 이외에도 변수나 상수를 선언할 수 있다.

function moon(a, b) {
  const c =100;
  return (a-b) * c;
  }
  console.log(moon(5,3))
  
실행결과
200
profile
Welcome to my world! ☺️

0개의 댓글