흔히들 구분하지 않고 사용하지만 분명한 차이가 있는만큼 실수하지말고 코드리뷰할때 정확한 용어를 사용하도록 하자
함수 등과 같은 서브루틴의 인풋으로 제공되는 여러 데이터 중 하나를 가리키기 위해 사용된다
매개변수라고 한다.
누군가에게 전화를 건다면 전화를 걸 대상에 대한 값이 있어야 하는데 이 값을 기억해주는 변수가 매개변수 즉 parameter라고 생각하면된다.
def Result(firstValue, secondValue):
return firstValue+secondValue
const test =(a , b) => {
return(a+b)
}
firstValue와 secondValue가 Result함수의 Param이 된다. 어떤 값이 파라미터에 들어오게 되면 Result함수가 첫번째 파라미터와 두번째 파라미터의 값을 더해준다.
여기서 더 필요한게 무엇일까? 당연히 안에 들어가야할 값일 것이다. 우리는 그 값을 Argument라고 한다
변수의 특별한 한 종류로서, 함수 등과 같은 서브루틴[1]의 인풋으로 제공되는 여러 데이터 중 하나를 가리키기 위해 사용된다. 여기서 서브루틴의 인풋으로 제공되는 여러 데이터들을 전달인자(argument) 라고 부른다 - 위키백과
즉 실제 함수 또는 루틴에 전달되는 값을 의미한다. 파라미터안에 들어가있는 전달된 값이므로 코드로는 이렇게 구현해볼 수 있다.
print(add(3,4))
# 혹은 지정된 변수 값 참조할때
a = int(1)
b = int(2)
print(add(a,b))
console.log(test(1,3));
어떤 형식이든 상관이 없다. 미리 지정해둔 변수에 담긴 값을 가져올 수 있고 ouput에 값을 직접 대입해도 된다.
데이터 타입 어느 것에 상관없이 어떤 값이든 넣을 수 있다. 배열이든 string이든 boolean이든 한번 넣어보자
def add(firstValue, secondValue):
return firstValue + secondValue
print(add(str("안녕"),str(" 반가워")))
---결과
"안녕 반가워"
# 혹은
def add(firstValue, secondValue):
return firstValue + secondValue
a = str("오늘의 날씨는")
b = str("영하 8도입니다")
print(add(a,b))
--결과
"오늘의 날씨는영하 8도입니다"
쉽게 생각하면 부산까지 간다고 예시를 들어보자. 부산까지 가는데 필요한 운송수단이 Parameter 칭하면 그 운송수단을 이용하여 타고 있는 사람들을 Argument라 생각하면 된다.