반응형

javascript에 존재하는 데이터 타입에 대해서 알아보자.

데이터 타입은 값의 종류를 말하며 자바스크립트에서 모든 값은 데이터 타입을 갖는다.

자바스크립트에서 es6기준으로 7개의 데이터 타입을 제공하며 원시 타입객체 타입으로 분류할 수 있다.

Javascript의 데이터 타입

원시타입

  • 숫자 타입( number ): 숫자. 정수와 실수 구분 없이 하나의 숫자 타입만 존재한다.
  • 문자열 타입( string ): 문자열타입이다.
  • 불리언 타입( boolean ): 논리적 참(true)과 거짓(false)
  • undefined 타입: 값을 할당하지 않은 변수가 가지는 값이다.
  • null 타입: 값이 없다는 것을 의도적으로 명시할 때 사용하는 값이다.
  • 심벌 타입 ( symbol ): ES6에서 추가된 7번째 타입이다.
  • bigInt 타입: 기존 숫자 타입에서 표현이 되지 않는 큰 숫자를 표현할수 있는 타입이다. (작성일 기준 사용하는걸 본적이 없다.)

객체타입

  • 객체
  • 함수
  • 배열
  • ...

 

숫자타입

모든 수를 실수로 처리한다.

// 모두 숫자 타입
const integer = 10;   // 정수
const double = 10.12; // 실수
const negative = -10; // 음의 정수

숫자 타입은 추가적으로 세가지 특별한 값이 있다.

  • Infinity: 양의 무한대
  • -Infinity: 음의 무한대
  • NaN: 산술 연산 불가 (Not a Number)

 

문자열 타입

텍스트 데이터를 나타내는 데 사용한다.

문자열을  '' (single quote), "" (double quote), `` (backtick)으로 텍스트를 감싼다.

const singleQuote = 'singleQuote';
const doubleQuote = 'doubleQuote';
const backtick = `backtick`;

 

불리언 타입

불리언 타입은 참, 거짓을 나타태는 true와 false 뿐이다.

const trueBoolean = true;
const falseBoolean = false;

 

undefined 타입

undefined 타입의 값은 undefined가 유일하며, undefined는 개발자가 의도적으로 할당하기 위한 값이 아닌 js 엔진이 변수를 초기화 할 때 사용하는 값이다.

let test;
console.log(test); // undefined

null 타입

null 타입의 값은 null이 유일하며, 변수의 값이 없다는 것을 의도적으로 명시할 때 사용한다.

let nullableNumber = 100;
nullableNumber = null;

심벌 타입

ES6에서 추가된 7번째 타입이며, 변경 불가능한 원시 타입의 값이다.

다른 값과 중복 되지 않으며, 객체의 프로퍼티 키를 만들기 위해 사용한다.

심벌은 Symbol 함수를 호출해서 생성한다.

// 심벌 값 생성
const key = Symbol('key');
console.log(typeof key);  // symbol

// 객체 생성
const obj = {};

obj[key] = 'value';
console.log(obj[key]);  // value

 

 

반응형
얼은펭귄