본문 바로가기

비전공의 CS 지식/용어 정리

인수(arguments)와 인자(parameter)

  • parameter
  • argument
  • 매개변수
  • 전달 인자
  • 변수
  • 인자
  • 인수

커뮤니티를 보면 위와 같은 용어들을 혼용해서 사용하는 경우를 종종 볼 수 있습니다. 심지어 블로그 글에서도 잘못 쓰인 경우도 본 적이 있습니다.

 

인수와 인자는 정확히 무엇일까요?

 

인수(arguments)

함수를 호출할 때 값을 전달한다고 해서 전달 인자라고도 부릅니다.

매개변수와 달리 전달 인자는 고정되어 있지 않고, 호출할 때마다 수시로 변하는 값(value)이기 때문에 변수가 아닌 값으로 정의합니다.

 

// 함수에서 1,2에 해당합니다
add(1,2);

 

인자(parameter)

함수를 선언할 때 사용되는 변수(variable)입니다.

 

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

// 매개변수 a, b

 

함수 내부에 있는 인자로써, 특정한 값으로 정해진 것이 아니라 함수가 호출하면서 건네준 인수가 변수(variable)에 담기게 됩니다.

들어오는 인수와 매개체 역할을 하기 때문에 매개 변수라고도 합니다.

 

인수와 인자는 단어가 비슷해서 헷갈릴 수도 있습니다.
함수 호출 시 사용되는 값은 인수나 arguments로,
함수 선언시 사용하는 변수는 매개변수나 parameter로 부르는 것을 추천합니다.