답변
배열, 객체는 const로 변수를 선언했을 때 찾아가는 주소만 할당된 참조 자료형이기 때문입니다. 요소나 속성을 변경하더라도 해당 주소는 변경되지 않으므로 const로 선언된 배열, 객체라도 속성을 추가할 수 있는 것 입니다.
꼬리질문
불변객체를 만드는 법.
const로 재할당은 불가능하지만 속성은 변경이 가능합니다. 이때 Object.freeze()메소드의 재할당은 가능하지만 속성은 변경 불가한 특성을 활용해 불변객체를 만들 수 있습니다. 또는 Object.assign()메소드, 전개연산자, lodash의 cloneDeep()을 활용해 깊은 복사를 하여 원본 객체를 보존하는 방법도 있습니다.
'1차 공부 > 기술면접 준비' 카테고리의 다른 글
Cookie의 MaxAge, Expires 옵션이 무엇인지, 설정하지 않으면 어떻게 되는지 설명해주세요. (0) | 2023.03.01 |
---|---|
useRef가 필요한 상황을 예시를 들어 설명해주세요 (0) | 2023.02.28 |
require와 import차이점을 설명해주세요. 각각 어떤 상황에서 쓸 수 있나요? (0) | 2023.02.27 |
브라우저 저장소에 대해서 차이점을 설명해주세요 (0) | 2023.02.27 |
HTTP에 대해 설명하고, 알고있다면 HTTP 메세지 구조에 대해 더 자세히 설명해주세요 (0) | 2023.02.23 |