# Object assign

객체 변경하기
객체의 프로퍼티를 변경하는 방법에는 크게 2가지가 있다. 1. 객체의 프로퍼티를 직접 변경하는 방법 2. 객체를 복제하여 변경하는 방법 Q. 1번 방법이 좋은거야 2번 방법이 좋은거야? A. 대체로 2번 방법이 좋다 A.1 되돌리기 기능(Undo, Redo)을 구현하기 편하다. A.2 객체의 차이를 알기 위해 요소를 순회하지 않아도 된다. A.3 Vue.js나 React 같은 프레임워크가 HTML Elment의 리렌더링 필요성을 결정하기 수월하다. 부록 다른 방법? 경우에 따라 더 편한 방법을 사용할 수 있다. Array.structuredClone(), Lodash를 쓰기도 한다. Array.structuredClone()은 브라우저 지원여부에 따라 결정하자. 
JavaScript - 15
어떤 자료형을 사용할 것인가? JSON web에서 사용가능한 정보들이다. 이러한 정보들은 JSON형태의 자료구조로 오게된다. 객체로 묶여서 각 프로퍼티는 배열로 데이터묶음을 제공하고, 각 데이터들은 객체로서 주어진다. Array, Sets vs Objects or Maps 일반적인 데이터 나열이냐 키, 값의 활용성이 있느냐 에따라 사용할 자료형을 구분지을수 있다. Arrays 일반적인 리스트로서 중복이 허용하는 리스트 Sets 중복을 허용하지 않는 리스트 항목 검색등에 사용되어