[러닝 타입스크립트] Chapter 2 타입 시스템

해리포터·2023년 2월 28일
0
post-thumbnail

타입의 종류

  • 타입은 값의 형태이다
    • 값에 존재하는 속성과 메서드
    • typeof 연산자가 설명하는 것을 의미
  • TS의 가장 기본적인 타입은 JS의 7가지 원시 타입(primitive type)
    • null
    • undefined
    • boolean
    • string
    • number
    • bigint
    • symbol

타입 시스템

타입 시스템은 프로그래밍 언어가 프로그램에서 가질 수 있는 타입을 이해하는 방법에 대한 규칙 집합

  • 러닝 타입스크립트 p51

타입 시스템의 작동 방법

  1. 코드의 모든 타입과 값을 이해한다
  2. 선언된 초기 값이 가질 수 있는 타입을 이해한다
  3. 각 값이 선언된 이후 어떻게 사용될지 모든 방법을 확인한다
  4. 타입에 맞지 않는 값을 사용하면 에러를 발생시킨다

오류 종류

TS를 작성할 때 가장 자주 만나는 에러들:

  • 구문 오류(syntax error)
    • TS가 코드로 이해할 수 없는 잘못된 구문(즉, 잘못된 문법)을 사용할 때 발생
  • 타입 오류(type error)
    • TS의 타입 검사기(타입 체커)가 타입에서 오류를 감지했을 때 발생


할당 가능성

할당 가능성은 함수 호출이나 변수에 값을 제공할 수 있는지 여부를 확인하는 것을 말한다.

  • TS는 변수와 할당된 값을 읽고, 그 변수가 가질 수 있는 타입을 결정한다.
  • 이후 해당 변수에 맞지 않는 타입의 값이 할당되면 에러를 발생시킨다.
    ' Type 할당하려고하는값 is not assignable to type 값이할당되는변수 '

타입 애너테이션

  • 변수에 초기값을 할당하지 않으면 변수의 타입은 암묵적으로 any가 된다.
    • 모든 타입이 올 수 있다는 의미
  • 타입 애너테이션은 초기값을 할당하지 않고도 변수에 타입을 지정할 수 있게 한다.
    • 변수명 뒤에 콜론 :타입명을 써서 표기한다.
profile
FE Developer 매일 한 걸음씩!

0개의 댓글