답변:
1)객체 타입은 변경 가능한 값, 새로운 값을 다시 만들 필요없이 직접 변경이 가능하다.
(let 변수는 어떠한 값을 가리키다가 다시 다른 값의 주소를 가리켜 재 할당 가능)
2)불변성은 원시 타입이다. 메모리영역 안에서 변경이 불가능하고 변수에 할당할 때 완전히
새로운 값이 만들어져 재 할당된다.
(const는 재선언 및 재할당 불가능)
(다만 const는 값에 대한'참조'가 한번 변수에 할당되고 나변 변할 수 없는것이고
const 변수가 참조하고 있는 '값'이 불변한건 아니다)
답변:
기본형 타입 : (1)숫자, (2)문자열, (3)불리언, (4)null, (5)undefined, (6)심볼
참조형 타입 : (1)객체, (2)배열, (3)함수, (4)날짜, (5)정규표현식, (6)Map, (7)WeakMap, (8)Set, (9)WeakSet
답변:
const test = {
'name' : 'dam'
};
Object.freeze(test);
1) 얕은 복사
2) 깊은 복사
결론적으로는 객체의 주소값을 복사하는지, 아니면 객체의 실제 값(value)를 복사하는지의 차이이다.