<aside> 📌
📌 매개변수의 기본값은 무조건 undefined
function add(a, b){
console.log(a); //undefined
console.log(b); //undefined
return a + b;
}
add();
📌 매개변수의 정보는 함수 내부에서 접근이 가능한 arguments 객체에 저장된다.
function add(a, b){
console.log(arguments);
return a + b;
};
add(1, 2, 3); //[Arguments] { '0': 1, '1': 2, '2': 3 }
✏ 매개변수 기본값 Default Parameters a = 1, b = 1
function add(a = 1, b = 3) {
console.log(a); // 1
console.log(b); // 3
console.log(arguments); // [Arguments] {}
return a + b;
}
add();
✏ 외부에 값이 지정되면 Default Parameters 값은 무시되고, 외부 값으로 매개변수가 지정됨
function add(a = 1, b = 3) {
console.log(a); // 10
console.log(b); // 20
console.log(arguments); // [Arguments] { '0': 10, '1': 20 }
return a + b;
}
add(10, 20);
📌 Rest 매개변수(Rest Parameters)
→ 인자가 몇 개 인지 모를때 인자를 배열로 받아온다.
function sum(a, b, c, ...numbers) {
console.log(a); //1
console.log(b); //2
console.log(c); //3
console.log(numbers); //[4, 5, 6, 7, 8]
console.log(arguments);
}
sum(1, 2, 3, 4, 5, 6, 7, 8);
console.log(arguments);
// [Arguments] {
'0': 1,
'1': 2,
'2': 3,
'3': 4,
'4': 5,
'5': 6,
'6': 7,
'7': 8
}