본문 바로가기
Back-end/node js

parameter vs argument 개념 정리

by kkkdh 2022. 10. 15.
728x90

이번에는 자바스크립트 언어로 예시를 들어 parameter와 argument 개념에 대해서 정리해볼까 합니다.

 

일단 parameter와 argument 순서대로 개념을 정리해봅시다.


parameter (매개변수)

 

매개변수 parameter는 함수를 정의할 때 외부에서 전달 받은 인수를 함수의 내부로 전달하기 위해 사용하는 변수를 의미합니다.

 

따라서 함수 안에서 사용되는 변수를 의미하죠

 

다음과 같은 예시 코드를 함께 봅시다

function add(x, y) {
	return x + y;
}

add = (x, y) => {
	return x + y;
}

add 라는 함수를 기본 함수, arrow function 두 가지 방식으로 정의해 봤습니다. 

 

위의 예시에서는 x와 y가 외부에서 함수를 호출할 때 전달한 인자가 전달되는 변수이므로 parameter, 즉 매개 변수의 역할을 수행한다고 정리할 수 있습니다.

 

이 개념을 보고 저는 저희가 수학 수업을 들을 때 종종

f(x) = 3x + 2

뭐 이런 함수를 많이 봤잖아요?

 

여기서 x매개 변수라고 부르곤 했는데 이것 또한 외부에서 함수를 사용할 때 전달된 인수가 x라는 변수에 저장되기 때문에 x를 매개 변수라고 불렀던 것이 아닐까? 라는 생각이 들었습니다.


argument (인수)

 

그렇다면 argument는 뭘까요?

 

당연히 앞에서 말했던 것처럼 함수를 호출할 때 외부에서 전달되는 인수에 해당합니다.

 

add(2, 3);
add(3, 4);
add(101, 12);

이렇게 앞에서 정의한 add 함수를 사용할 때, 인자를 요런식으로 전달하는데 바로 여기에 들어가는 값들이 인수(argument)에 해당합니다!

 

당연히 변수나 객체 혹은 함수가 들어갈 수도 있고, 그 때는 그게 argument에 해당하겠죠?


Summary

parameter (매개 변수) 함수 내에서 외부에서 전달된 인수를 저장하는 변수
argument (인수) 함수 호출시 함수로 전달하는 값 or 객체 or 함수

 

728x90

댓글