코딩애플 보면서 정리했습니다.
array나 object 자료형 왼쪽에 붙일 수 있으며, 괄호 벗기기용 연산자이다.
예를들어 ...[1,2,3] 이렇게 쓰면 그 자리에 1,2,3이 남는다.
주로 array나 object 자료형을 복사할 때 많이 사용한다.
let data1 = [1,2,3];
let data2 = [...data1];
console.log(data1 === data2) //false
data1에 있던 자료들을 괄호를 벗기고, 다시 array로 만들어달라고 사용하면 새로운 array로 인식을하여 화살표(포인터)가 달라진다.
그래서 스프레드연산자를 사용하면 독립적인 array 복사본을 생성해 줄 수 있다.
object 자료형도 마찬가지이다.
이러한 독립적인 사본을 shallow copy 혹은 deep copy라고 한다.