JavaScript에도 버전이 있다. 2015년에 출시된 ES6에 가독성과 유지보수성을 획기적으로 향상할 수 있는 문법, 그중에서 spread/rest문법 그리고 구조 분해 할당(destructing)을 배웠다.
주로 배열을 풀어서 인자로 전달하거나, 배열을 풀어서 각각의 요소로 넣을 때에 사용한다.
파라미터를 배열의 형태로 받아서 사용할 수 있습니다. 파라미터 개수가 가변적일 때 유용하다.
let arr1 = [0, 1, 2];
let arr2 = [3, 4, 5];
arr1 = [...arr1, ...arr2]
let arr = [1, 2, 3, 4];
let arr2 = [...arr]; // arr.slice() 와 유사
arr2.push(4);
let obj1 = { i: 'hi', x: 20 };
let obj2 = { i: 'hello', y: 30 };
let cObj = { ...obj1 };
let mObj = { ...obj1, ...obj2 };
객체에서 구조 분해 할당을 사용하는 경우, 선언(const, let, var)과 함께 사용하지 않으면 에러가 발생할 수 있다.