🚩[JS] Null 타입과 Undefined 타입
: JavaScript의 변수 타입(원시타입, 참조타입)
타입 | 정의 | 종류 |
---|---|---|
원시타입(Primitive Type) | 불변 값(변경할 수 없는 값) | 7가지 (Boolean, Null, Undefined, Number, BigInt, String, Symbol) |
참조 타입(ReferenceType) | 식별자로 참조할 수 있는 메모리 상의 값 | 원시값 외 모든 객체 |
타입 | 정의 | 종류 | 접근 | 원본의 불변성(immutability) |
---|---|---|---|---|
원시타입(Primitive Type) | 불변 값(변경할 수 없는 값) | 7가지 (Boolean, Null, Undefined, Number, BigInt, String, Symbol) | 변수 선언, 초기화, 할당 시 값이 저장된 메모리 영역에 직접적으로 접근(Access By Value) | 원본 유지 |
참조 타입(ReferenceType) | 식별자로 참조할 수 있는 메모리 상의 값 | 원시값 외 모든 객체 | 변수가 가지고 있는 메모리 주소를 이용해서 변수의 값에 접근(Access By Reference ) | 원본 변경 |
: 새로운 메모리 공간을 확보해, 완전히 복사한다. 일반적으로 우리가 알고 있는 개념의 복사.
: 참조 타입 데이터가 저장한 '메모리 주소 값'을 복사
참조 타입을 깊은복사 하기
원본 데이터가 변경되지 않도록 주의하려면, 복사 시 깊은복사 처리되었는지 확인하도록 한다.