[JavaScript] 17. Spread 연산자와 Rest 매개변수

서회정's avatar
Jan 28, 2026
[JavaScript] 17. Spread 연산자와 Rest 매개변수

1. Spread 연산자

// 1. Spread 연산자 // -> Spread : 흩뿌리다, 펼치다 라는 뜻 // 객체나 배열에 저장된 여러 개의 값을 개별로 흩뿌려주는 연산자 let arr1 = [1, 2, 3]; let arr2 = [4,...arr1, 5, 6]; console.log(...arr2);
notion image
 
오브젝트에서도 spread 연산자를 사용할 수 있다.
let obj1 = { a: 1, b: 2, } let obj2 = { ...obj1, c: 3, d: 4, } console.log(obj2);
notion image
 
함수에서도 역시 spread 연산자를 사용하여 값을 흩뿌릴 수 있다.
function funcA(p1, p2, p3){ console.log(p1, p2, p3); } funcA(...arr1);
notion image
 

2. Rest 매개변수

💡
Spread 연산자와 다르다! 엄연히 다름!
아무리 많은 매개변수가 들어오더라도 배열에 한 번에 저장하여 불러올 수 있다.
// 2. Rest 매개변수 // -> Rest : 나머지, 나머지 매개변수 function funcB(...rest){ console.log(rest); } funcB(arr1);
notion image

✅ Rest 매개변수 뒤에는 다른 매개변수가 올 수 없다

notion image
Rest 매개변수 앞에는 다른 매개변수를 넣을 수 있다. 하지만 Rest매개변수는 지금부터 나오는 모든 인수를 배열에 저장하는 기능을 가지고 있기 때문에 뒤에 무언가 올 수 없다.
Share article

clubnerdy