본문 바로가기

개념정리

8/7[TIL]매개변수

변수는 우리가 처음에 배워 왔듯이 전달 인자(arguments)와 함께 함수에 전달하며 매개변수(parameters)를 통해 전달받은 인자를 지정해놓고 수식, 함수 등에 놓고 사용할 수 있다.

 

전달 인자(arguments)의 길이가 유동적이면 "Rest Parameter"를 이용해 매개변수(parameters)를 지정해주면 된다.

그럼 매개변수가 배열의 형태로 전달 되게 된다.

1
2
3
4
5
function getMaxNum(...nums) {
  console.log(nums); //[3,6,9,12]
}
 
getMaxNum(3,6,9,12);
cs

위의 그림처럼 ...nums 이렇게 입력해주면 된다.

 

그리고 매개변수에 기본 값을 넣어주고 싶은 경우에는 가능하며 문자열/숫자/객체 등 어떠한 타입도 모두 가능하다.

1
2
3
4
5
function getRoute(destination, departure="Masan") {
  return '출발지: '+ departure + ',' + '도착지: ' + destination;
}
 
getRoute('Busan'); // '출발지: Masan, 도착지: Busan'
cs

 

1
2
3
4
5
function getRoute(destination='Masan', departure) {
  return '출발지: '+ departure + ',' + '도착지: ' + destination;
}
 
getRoute(undefined'Busan'); // '출발지: Masan, 도착지: Busan'
cs

위의 두 번째 그림 처럼 중간에 기본 매개변수가 들어가는 경우 undefined로 넘겨줘야만 기본값으로 처리하며 그러지 않으면 undefined가 출력되게 된다. Ex)"출발지: undefined,도착지: Busan"

 

 

그리고 추가적으로 javascript의 기본 값(Primitive Values)과 참조 값(Reference Values)을 공부하였다.

값이 원시 값 즉, 기본 값이면 해당 변수에 저장 된 실제 값을 조작하고 기본 값을 저장하는 변수는 value로 액세스

된다.

 

기본 값과 달리 객체를 조작 할 때에는 실제 객체가 아닌 해당 객체의 참조에 대해 작업을 진행하게 된다. 객체를 저장하는 변수가 참조로 액세스 됨을 의미한다고 볼 수 있다. 이게 말이 헷갈릴 수가 있지만 쉽게 풀어낸다면 강의에서도 강조하셨던 "같은 쪽을 바라본다."는 말이 적절한 것 같다.

 

javascript의 기본 값(Primitive Values)과 참조 값(Reference Values)의 상세한 설명은 아래 주소로 가면 알 수 있다.

 

https://www.javascripttutorial.net/javascript-primitive-vs-reference-values/

'개념정리' 카테고리의 다른 글

[8/10]TIL <HTML>  (0) 2020.08.10
개발자로의 커리어 전환 2주일...  (1) 2020.08.10
8/7[TIL]객체 지향  (0) 2020.08.07
8/6일 [TIL] 테스트 코드  (0) 2020.08.06
8/5일 [TIL]  (0) 2020.08.05