원시 자료형 (primitive type data)
- Number, String, Boolean, undefined, null, bigint, symbol
- 하나의 데이터를 담고 있음
- 데이터를 Stack에 저장
참조 자료형 (reference type data)
- Array, Object, Function
- 데이터는 Heap이라는 별도의 메모리 저장 공간에 저장. Stack에는 Heap의 주소를 저장.
- Heap의 크기는 데이터의 크기에 따라 동적으로 변함.
변수 복사 후 값 변경 시
원시 자료형 : 원본 데이터 변하지 않음
- 데이터 값이 복사되기 때문에 원본 데이터는 변하지 않음
let a = 4;
let b = a;
b = 7;
a;
참조 자료형 : 원본 데이터 변경됨
- 주소가 복사되기 때문에 원본 데이터가 변경됨.
let c = [3, 5, 7];
let d = c;
d[0] = 2
c;
===는 주소값을 비교
[] === []
[1, 2, 3] === [1, 2, 3]
같은 주솟값을 가지게 하는 =