-
자료형JavaScript 2020. 8. 11. 02:51
자바스크립트에서 제공하는 자료형은 크게 두가지로 나뉘어 진다.
* JS에서 제공하는 자료형 (JS 프로그램에서 사용가능)
+ 불리언(booleon), 숫자(Number), 문자(string), 객체 (obj), undefine, Null 과 같은 자료형을 제공한다.
+ 자료형은 Primitive Type 과 Object Type 두가지로 나뉘어 진다.
1. Number
JS의 경우에는 모든 숫자의 자료형 규격을 64Bit 부동 소수점 방식을 체택함으로 따로 실수와 정수를 나누어서 값을 담지 않으며, 따라서 값을 연산처리 할때 역시 정수, 소수의 자료형 변환은 필요하지 않는다. 따라서 Number 자료형은 2의 64승에 해당하는 숫자 값을 가지며 이때 추가적으로 3개는 특별한 값을 가진다. 특별한 값은 다음과 같다.
- NaN (Not a Number) : 숫자가 아니라는 의미로 숫자가 아닌 데이터를 사용하여 숫자 연산을 하고자 할때 반환한다.
- Infinity : 만약 숫자 자료형을 가진 변수가 무한대의 숫자 (양수)를 가진다면 다음과 같은 값을 반환한다
- -Infinity : 위와 반대로 무한대의 숫자 (음수)를 가진다면 다음과 같은 값을 반환한다.
2. Undefined
Undefined 타입은 undefined 라는 값을 가지고 있으며 해당 값은 해당 변수가 아무런 값도 가지고 있지 않다는 시맨틱을 나타낸다. 이와 같이 나타내는 이유는 JS는 모든 데이터를 Object 로 관리를 하며 이때 { 식별자 ( 변수명 ) : 값 } 과 같이 대응하여 데이터를 관리하게 된다. 따라서 변수를 선언만 할 경우 해당 변수의 식별자와 짝을 이루는 값으로 JS 에서는 임의로 undefined 값을 넣는다 .
3. Null
Null 타입은 null이라는 값을 가진다. null 과 undefined 는 서로 유의미한 값을 담고 있지 않다는 의미는 동일하다 하지만 가장 큰 차이는 undefined는 변수 선언시 자동으로 할당 되며 null은 사용자가 따로 값을 할당해주어야 한다. 따라서 변수를 사용함에 있어서 해당 변수안의 값이 없다는 것을 뜻하기 위해서 null 값을 할당해 해당 변수는 데이터가 없다는 것을 의도적으로 나타낼 수 있다.
4. Object
Object 타입은 JS에서 사용하는 기본 데이터 타입 (숫자, 문자, 불리언, 언디파인) 과는 다르게 분류된다.
오브젝트 타입은 키값 : 벨류 값으로 대응하는 구조를 가진다. 이때 하나의 쌍 즉 하나의 키 : 벨류로 대응되는 자료를 프로퍼티 (Property) 라고 부르며 Object Type은 이러한 프로퍼티가 0개 이상으로 이루어진 것을 의미한다. 즉 Object는 프로퍼티의 집합이다라고 볼 수 있다.
* 스펙에서 작성 자료형 (JS 프로그램에서 사용불가)
+ 스펙 즉 ECMA 에서 제공하는 문서에서 사용하는 자료형으로 JS 프로그램에서 사용할 수 없다.
'JavaScript' 카테고리의 다른 글
Built in object 의 생성 (인스턴스) (0) 2020.10.05 Built-in object 란 ? (인스턴스) (0) 2020.09.23 Built-in 이란 ? (1) 2020.08.17 Object Type (0) 2020.08.17 용어 모음 (0) 2020.08.11