TIL 10 | Javascript_매개변수와 인수
매개변수와 인수 (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
Author And Source
이 문제에 관하여(TIL 10 | Javascript_매개변수와 인수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@moonsirl9123/TIL-10-Javascript-19b4ziza저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)