두치의 개발공부

Data Type 본문

언어/JavaScript

Data Type

Du_chi 2022. 1. 9. 17:06

데이터 타입(Data Type)

데이터 타입은 프로그래밍 언어에서 사용할 수 있는 데이터의 형태입니다.

 

JavaScript에서 Data Type은 크게 2가지로 나뉩니다.

 

  • 원시 타입 (Primitive Data Type)
    • Boolean
    • null
    • Undefined
    • Number
    • String
    • Symbol
  • 객체 타입

 

원시 값
객체를 제외한 모든 타입은 불변 값(변경할 수 없는 값)을 정의합니다.
  • Boolean 타입
    Ture(참)와 False(거짓) 2가지 값만 가지는 타입

  • null 타입
    null 하나의 값을 가지는 타입
    null 값은 일반적으로 존재하지 않거나 유효하지 않은 object 또는 주소를 의도적으로 가리 키는 참조를 나타냅니다.
    null의 동작이 원시적으로 보이기 때문에 원시값이지만, 모든 object는 null 값으로부터 파생되기 때문에
    typeof null 의 결과는 object를 반환합니다.

  • Undefined 타입
    값을 할당하지 않은 변수는 undefined 값을 가집니다.
    선언은 하였지만, 값을 할당하지 않은 상태입니다.

  • Number 타입
    Number와 BigInt 두 가지의 내장 숫자 타입을 가지고 있습니다.
    Number는 보통 정수,소수,지수,음수 와 같은 숫자를 의미합니다.
    BigInt는 Number의 안전 한계를 넘어서는 큰 정수를 안전하게 저장하고 연산할 수 있습니다.
    정수 끝에 n을 추가하거나 생정자를 호출해 생성할 수 있습니다.
    ex) const x = 2n ** 53n

    cf) NaN(Not a Number)
    숫자가 아님을 표현합니다.
    NaN의 판별은 Number.isNaN() 을 사용하여 확인할 수 있습니다.

  • String 타입
    텍스트 데이터를 나타날 때 사용합니다.

  • Symbol 타입
    es6에서 새롭게 추가된 데이터 타입으로 변경 불가능한 원시 타입의 값이며, 다른 값과 중복되지 않는 고유한 값입니다.
    Symbol()로부터 반환되는 모든 심볼 값은 고유합니다.
    일반적으로 심볼은 객체의 프로퍼티 키로 사용됩니다.(고유한 Key값을 가지기 위해서)
    const symbol = Symbol('key');
    const obj = {};
    
    obj[symbol] = 'duchi';
    
    console.log(obj[symbol] === 'duchi'); // true
    console.log(obj); // {Symbol(key) : 'duchi'}​

 

객체 타입
자바스크립트는 객체(object) 기반의 스크립트 언어로서 자바스크립트를 이루고 있는 거의 모든 것이 객체이다.
원시 타입을 제외한 나머지 값(배열, 함수 등등)이 모두 객체라고 할 수 있다.
const duchi = {
	name : 'duchi',
	job : 'developer'
};

 

'언어 > JavaScript' 카테고리의 다른 글

클로저  (0) 2022.01.09
setTimeout vs setInterval  (0) 2022.01.09
비동기 처리  (0) 2022.01.09
유사배열  (0) 2022.01.09
함수 선언식 vs 함수 표현식  (0) 2022.01.09