// 1. Spread 연산자 (배열이나 객체의 포장을 뜯어서 흩뿌립니다)
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
// 배열 합치기 (새로운 배열이 생성됩니다)
const combined = [...arr1, ...arr2];
console.log("합쳐진 배열:", combined); // [1, 2, 3, 4, 5, 6]
// 객체 복사 및 덮어쓰기 (불변성 유지에 필수!)
const baseUser = { name: "민수", age: 28 };
const updatedUser = { ...baseUser, age: 29, city: "서울" };
console.log("업데이트된 유저:", updatedUser);
// { name: "민수", age: 29, city: "서울" }
// 2. Rest 파라미터 (남은 인자들을 하나의 배열로 싹 쓸어 담습니다)
function sumAndLog(first, ...rest) {
console.log("첫번째 값 (단독):", first);
console.log("나머지 값들 (배열로 묶임):", rest);
// 나머지 값들만 다 더해봅시다
const totalRest = rest.reduce((sum, num) => sum + num, 0);
console.log("나머지 값들의 합:", totalRest);
}
sumAndLog(10, 20, 30, 40);
// 출력:
// 첫번째 값 (단독): 10
// 나머지 값들 (배열로 묶임): [20, 30, 40]
// 나머지 값들의 합: 90