function timeToGoHome(speed, distance) { \
//step2 매개변수parameters)를 통해 전달받은 인자를 사용가능
let time = distance / speed;
return time;
}
timeToGoHome(20, 100)
//step1. 전달인자(arguments)와 함께 함수에 전달.
만약, 전달인자(arguments)의 길이가 유동적이라면?
ES6
Rest Parameter를 이용해 매개변수를 지정.
매개변수가 배열의 형태로 전달됨function getMaxNum(...nums) { console.log(nums); //[3,5,8,10] function getMaxNum(...num) { return nums.reduce(function(acc, current) { if(acc > current) { return acc; } else { return current; } }) }
ES5
arguments라는 키워드를 이용할 수도 있음.function getMaxNum() { console.log(arguments); // {0:3, 1:5, 2:8, 3:10} } getMaxNum(3,5,8,10);
- 상단 출력되는 arguments객체는 배열같이 보이지만, 배열이 아님. 이를 **유사배열**이라고 부름. - 따라서 배열method를 사용할 수 X
매개변수에 기본값을 넣어주고 싶을 경우?
ES6
Default Parameter를 할당해줄 수 있음
문자열/숫자/객체 등 어떠한 타입에도 가능함.function getRoute(departure = 'ICN', destination) { return '출발지: ' + departure + ',' + '도착지: ' + destination; } getRoute(undefined, 'PEK'); //'출발지: ICN, 도착지: PEK' /*중간에 기본 매개변수가 들어가는 경우 undefined를 넘겨줬을 때 기본값으로 처리.*/