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

권태형·2023년 3월 30일
0

지식정리

목록 보기
49/72
post-thumbnail
post-custom-banner

매개변수(parameter)

함수 선언 시 함수가 받아들일 값

파라미터는 함수를 선언할 때 함수가 받아들이는 값을 정의하는 변수라고 할 수 있고, 함수가 호출될 때 필요한 값을 받아들이는 매개체, 함수나 메서드를 정의할 때 사용되는 변수의 이름이라고도 할 수 있다.

function add(a, b) {
  return a + b;
}

위와 같은 함수가 있다고 한다면 add라는 함수에 ab가 함수의 매개변수인 파라미터이다.


인자(argument)

함수를 호출할 때 함수에 전달하는 값

아규먼트는 함수를 호출할 때, 함수가 받아들이는 파라미터에 대응하는 값을 말한다. 정의된 함수나 메서드를 호출할 때 이 변수에 넘겨줄 실제 값이라고 생각하면 된다.

function add(a, b) {
  return a + b;
}

let result = add(2, 3);

위에 설명한 ab는 함수의 파라미터이고, 실제 함수를 add(2,3)으로 호출할 때 a2와 대응되고, b3과 대응된다. 이처럼 파라미터에 대응되는 실질적인 값이 2,3을 아큐먼트라고 부른다.


예시

function greet(name) {
  console.log("Hello, " + name + "!");
}

greet("Alice"); // "Hello, Alice!" 출력

위 예시 코드에서 파라미터와 아규먼트를 구분한다면,

함수의 매개변수에 들어가 있는 name이 파라미터가 될 것이고,

실제 호출의 인자로 들어가 있는 Alice가 아규먼트가 될 것이다.

😀다른 일상적인 예시를 들어보자, 한 교실에 학생이 3명들어가서 청소를 한다고 가정하자.
이때 교실에 들어가서 청소를하는 학생은 (학생1, 학생2, 학생3)이 될 것이다.

하지만, 실질적으로 그 학생들은 김--, 이--, 박-- 등 여러가지 본인의 이름이 있을 것이다.
이처럼 학생1, 학생2 와 같이 외부에서 지칭하는 대명사의 역할을 해주는 것이 파라미터가 될 것이고,

실제 김--,최--,윤-- 등 각 학생의 이름이 학생1,2,3 에 대응하는 고유의 값인 이름들이 아규먼트가 될 것이다.


참고차료(출처)
이미지출처 LovePik 청소하는 학생 PNG 일러스트
TAEWAN.KIM 블로그 argument와 parameter 차이점

profile
22년 12월 개발을 시작한 신입 개발자 ‘권태형’입니다. 포스팅 하나하나 내가 다시보기 위해 쓰는 것이지만, 다른 분들에게도 도움이 되었으면 좋겠습니다. 💯컬러폰트가 잘 안보이실 경우 🌙다크모드를 이용해주세요.😀 지적과 참견은 언제나 환영합니다. 많은 댓글 부탁드립니다.
post-custom-banner

0개의 댓글