데이터 타입(Data Type)은 프로그래밍 언어에서 사용할 수 있는 데이터(숫자, 문자열, 불리언 등)의 종류를 말한다.
코드에서 사용되는 모든 데이터는 메모리에 저장하고 참조할 수 있어야 한다. 데이터 타입은 이러한 데이터를 메모리에 저장할 때 확보해야 하는 메모리 공간의 크기와 할당할 수 있는 유효한 값에 대한 정보, 그리고 메모리에 저장되어 있는 2진수 데이터를 어떻게 해석할지에 대한 정보를 컴퓨터와 개발자에게 전달한다.
한정된 용량을 효율적으로 사용하기 위해, 2진수 데이터로 저장된 메모리를 다양한 형태로 사용하기 위해 데이터 타입이 존재하는 것이다.
자바스크립트의 모든 값은 데이터 타입을 갖는다. ECMAScript 표준(ECMAScript 2015 (6th Edition), 이하 ES6)은 7개의 데이터 타입을 제공한다.
infinity
or -infinity
등과 같이 무한대도 포함된다.""
,''
등을 활용하여 표현한다.'a' + 'bc' === 'abc'
.length
속성이 있다.'abcd'.length === 4
true
or false
없음
을 의미한다.undefined
이라는 값이 있다.undefined
값을 기본으로 한다.undefined
값이 도출된다.let b;
console.log(b); // undefined
없음
을 의미한다.null
이라는 값이 있다. 변수의 타입은 object
이다.값이 없음
을 나타낸다.let a = null;
console.log(a); // null
console.log(typeof a); // object
Undefined와 Null의 차이
undefined은 변수를 선언하고 값을 할당하기 전의 형태, null은 변수를 선언하고 의도적으로 빈 값을 할당한 상태(빈 객체)이다.
즉, undefined는 자료형이 없는 상태이다. typeof를 통해 자료형을 확인해보면 null은 object로, undefined는 undefined가 출력되는 것을 확인할 수 있다.