구조 분해와 스프레드 판단

값을 꺼낼지, 새 객체나 배열을 만들지, 중첩 값을 안전하게 복사할지에 따라 문법 선택이 달라진다.

질문쓸 문법좋은 예위험 신호
필드만 꺼내나구조 분해const { id } = item필드가 없을 때 처리 없음
이름을 바꾸나alias{ id: itemId }변수 의미가 흐림
나머지를 보관하나rest{ id, ...rest }rest도 얕은 복사임
새 값을 합치나spread{ ...prev, done:true }덮어쓰기 순서 착각
깊은 복사가 필요한가structuredClone 등 별도 처리중첩 변경 방지spread가 deep copy라고 오해

스프레드는 편리한 복사 문법이지만 중첩 객체까지 자동으로 새로 만들지는 않는다.