배열을 풀어서 인자로 전달하거나(배열), 배열을 풀어서 각각의 요소(객체)로 넣을 때에 사용한다. Sum(...numbers) // 6 이 된다.
매개변수를 배열의 형태로 받아서 사용할 수 있다. 변수의 개수가 가변적일 때 유용하다. sum(1,2,3) // 6 , sum(1,2,3,4) // 10 이 된다.
lyrics // ['head', 'shoulders', 'knees', 'and', 'toes'] 가 된다.
arr1 // [1,2,3], arr2 // [1,2,3,4] 가 된다.
clonedObj // { foo: 'bar', x: 42 } , mergedObj // {{ foo: 'baz', x: 42, y: 13 }가 된다. 중복되는 foo에 대한 값을 넣어 주기 때문이다.
콘솔은 순서대로 'a' 'one' // 'b' 'two' // 'manyMoreArgs' { 'three', 'four', 'five', 'six') // 가 된다.
a // 10 , b // 20 , rest // [30, 40, 50] 이 된다.
a // 10 , b // 20 , rest // {c: 30 , d: 40} 이 된다.
객체에서 구조 분해 할당을 사용하는 경우, 선언(const, let, var)과 함께 사용하지 않으면 에러가 발생할 수 있다.