Primitive Values
단어 뜻 그대로 원시값입니다. javascript
는 Object
를 제외한 타입은 모두 변경이 불가능한 값(immutable value)입니다. 원시값은 변수에 할당 할 때 메모리에 고정된 값으로 저장합니다.
Kinds of Primitive Values
원시값의 종류는 Boolean
, Number
, String
, Null
, Undefined
, Symbol
로 6가지 입니다.
Boolean
Boolean
은 true
, false
두가지 값을 가질 수 있습니다.
1 | const positive = true; |
Number
javascript
는 정수만을 표현하는 특별한 자료형은 없습니다. Number
타입은 크게 세가지 의미있는 상징적인 값들도 표현 할 수 있습니다. 이 값들은 +/-Infinity
와 NaN
입니다.
1 | const poZero = 0; |
Number
타입에는 두 가지 방식으로 표현 할 수 있는 유일한 값이 있는데 0입니다. 따라서 0
과 -0
을 비교하게 되면 true
를 반환합니다.
1 | const max = Number.MAX_VALUE; |
+/-Infinity
와 비교하여 크거나 작은지 확인 할 수 있는 상수도 존재합니다. javascript
에서 표현 할 수 있는 가장 큰 값과 가장 작은 값을 상수로 저장하여 +/-Infinity
를 비교 할 수 있습니다.
String
javascript
의 문자열은 값을 변경 할 수 없습니다. 한 번 문자열이 생성되면 그 문자열을 수정 할 수 없다는 것을 의미합니다. 하지만 원래 문자열에서 일부를 수정하여 수정된 다른 문자열 생성은 가능합니다.
1 | const initString = 'string'; |
위와 같이 Add
문자열을 붙이고 ing
문자열만 따로 떼네어도 원본 initString
의 값엔 영향을 주지 않습니다.
Null
Null
의 타입은 딱 한가지 null
을 가질 수 있습니다.
1 | const nullValue = null; |
Undefined
값을 할당하지 않은 변수는 undefined
값을 가집니다.
1 | let unknown; |
Symbol
Symbol
은 유일하고 변경 불가능한 값입니다. es6
에서 추가되었습니다. 유일한 객체의 프로퍼티 키를 만들기 위해 주로 사용됩니다.
1 | const symbolKey = Symbol('key'); |