카테고리 없음
김민태의 데브캠프 2기 - sepread operator( 전개 연산자)
vitamin3000
2024. 11. 6. 19:05
특정 객체 또는 배열의 값을 다른 객체, 배열로 복제하거나 옮길 때 사용
배열 조합
const arr1 = [1,2,3];
const arr2 = [4,5,6];
const arrWrap = arr1.concat(arr2);
console.log(arrWrap); // [1, 2, 3, 4, 5, 6];
const arr1 = [1, 2, 3];
const arr2 = [4, 5];
Array.prototype .push.apply(arr1, arr2);
console.log(arr1); // [1, 2, 3, 4, 5]
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const arrWrap = [...arr1, ...arr2];
console.log(arrWrap); // [1,2,3,4,5,6];
const arr1 = [1, 2, 3];
const arr2 = [4, 5];
arr1.push(...arr2);
console.log(arr1) // [1, 2, 3, 4, 5];
객체 조합
const obj1 = {
a: 'A'
b: 'B'
};
const obj2 = {
c: 'C'
d: 'D'
}
const objWrap = {obj1, obj2};
console.log(objWrap);
{
obj1: {
a: 'A'
b: 'B'
},
obj2; {
c: 'C'
d: 'D'
}
}
위 코드를 통해 객체 자체가 들어감을 확인 할 수 있다.
const obj1 = {
a: 'A'
b: 'B'
};
const obj2 = {
c: 'C'
d: 'D'
}
const objWrap = {...obj1, ...obj2};
console.log(objWrap);
{
a: 'A',
b: 'B',
c: 'C',
d: 'D'
}
위 코드는 객체 자체가 아닌 각각의 값이 할당됨
기존 배열을 보존
case1 : 원본 배열까지 역순으로 정렬됨
const arr1 = [1, 2, 3]
const arr2 = arr1.reverse();
console.log(arr1) //[3, 2, 1];
console.log(arr2) //[3, 2, 1];
case2 : 원본 배열 유지
const arr1 = [1, 2, 3]
const arr2 = [...arr1].reverse();
console.log(arr1) //[3, 2, 1];
console.log(arr2) //[3, 2, 1];