스프레드 오퍼레이터는 펼침 연산자라고 합니다.
특정 객체 또는 배열 값을 다른 객체나 배열로 복제하거나 결합할 때 사용합니다.
// obj 객체 결합
const obj = {
a: 1,
b: 2,
}
const obj2 = {
c: 3,
d: 4
}
const newObj = {...obj, ...obj2};
console.log(newObj); // {a: 1, b: 2, c: 3, d: 4}
// arr 배열 복제
const arr = [1,2,3];
const arr2 = [4,5,6];
const newArr = [...arr, ...arr2];
console.log(newArr); // [1,2,3,4,5,6];
// 일반 함수 인자
function origin(obj) {
// 파라미터 개수를 맞춰줘야함
console.log(obj); // [1];
}
// 인자 스프레드
function a(...obj) {
console.log(obj); // [1,2,3,4,5];
}
function b(arg1, ...arg2) {
console.log(arg1); // 1
console.log(arg2); // [2,3,4,5];
}
origin(1,2,3,4,5);
a(1,2,3,4,5);
b(1,2,3,4,5);