코어 자바스크립트
책의 1장 데이터 타입 내용을 정리한 글이다.
자바스크립트의 데이터 타입에는 크게 두 가지가 있다. 바로 기본형(원시형, primitive type)과 참조형(reference type)이다.
기본형에는 number
, string
, boolean
, null
, undefined
등이 있고 ES6에서는 Symbol
이 추가됐다.
참조형에는 object
, Array
, Function
, Date
, RegExp
등과 ES6에서 추가된 Map
, WeakMap
, Set
, WeakSet
등이 객체의 하위 분류에 속한다.
그런데 어떤 기준으로 기본형과 참조형을 구분하는 것일가? 기본형
은 값이 담긴 주소값을 바로 복제하는 반면 참조형
은 값이 담긴 주솟값들로 이루어진 묶음을 가리키는 주소값을 복제한다는 점이 다르다.
기본형
은 불변성(immutability)를 띈다. 불변성을 잘 이해하려면 메모리와 데이터에 대한 지식이 필요하고, 나아가 식별자
와 변수
의 개념을 구분할 수 있어야 한다.