Basic Types

Dev_Sumni·2022년 4월 29일
0
post-thumbnail

TypeScript Types vs JavaScript Types

TypeScript TypesJavaScript Types
Static: set during developmentDynamic: resolved at runtime
  • ECMAScript 표준에 따른 기본 자료형
    Boolean
    Number
    String
    Null
    Undefined
    Symbol
    Array: object형

  • 프로그래밍을 도울 타입
    Any, Void, Never, Unknown
    Enum
    Tuple: object형

Primitive Types

오브젝트와 레퍼런스 형태가 아닌 실제 값을 저장하는 자료형
Primitive 형의 내장 함수를 사용 가능한 것은 JS 처리 방식 덕분

  • literal 값으로 Primitive 타입의 서브 타입을 나타낼 수 있다.
    래퍼 객체로 만들 수 있다.
    TypeScript의 핵심 Primitive Types은 모두 소문자이다.

boolean

let isDone: boolean = false;
isDone = true;
console.log(typeof isDone)
let isOk: Boolean = true;
let isNotOk: boolean = new Boolean(true);

number

  • 모든 숫자는 부동 소수점 값이다.
  • TypeScript는 16진수 및 10진수 literal 외에도, 2진수 및 8진수를 지원한다.
  • NaN
  • 1_000_000과 같은 표기가가능하다.

string

  • 텍스트 형식을 참조하기 위해 'String' 형식을 사용한다.
  • 문자열 데이터를 둘러싸기 위해 큰 따옴표("")나, 작은 따옴표('')를 사용한다.
  • Template String
    • 행에 걸쳐 있거나, 표현식을 넣을 수 있는 문자열이다.
    • backtick ` 기호에 둘러쌓여 있다.
    • 포함된 표현식은 `${expr} 와 같은 형태로 사용한다.

symbol

  • Primitive 타입의 값을 담아서 사용한다.
  • 고유하고 수정 불가능한 값으로 만들어준다.
  • 접근을 제어하는데 주로 사용한다.

(함수로 사용할땐 Symbol, Type으로 사용할땐 symbol)

null & undefined

  • null 과 undefined는 실제로 각각 null 과 undefined이라는 타입을 가진다.
  • 둘다 소문자만 존재한다.

object

  • Primitive 타입이 아닌것을 나타내고 싶을때 사용한다.

array

  • Array<타입>
    타입[ ]

tuple

  • 길이가 정해져있고 앞뒤 타입이 정확한 자료형이다.

any

  • 어떤 타입이어도 상관없는 타입니다.
  • 계속해서 개체를 통해 전파되므로 필요하지 않은 경우에는 사용하지 않도록 해야한다.

unknown

  • any와 짝으로 any 보다 Type-safe한 타입이다.
  • runtime error를 줄일수 있다.

never

  • 모든 타입의 subtype이며, 모든 타입에 할당 할 수 있다.
  • never에는 그 어떤것도 할당할 수 없다.
  • 잘못된 타입을 넣는 실수를 막고자 할때 사용한다.

void

  • return부분에 달아서 아무것도 하지 않겠다라는것을 명시적으로 표현하고 그것을 막는다.
profile
개발 일지 끄적 끄적,,

0개의 댓글