TIR: 타입스크립트 프로그래밍 (3) 타입의 모든것 (타입, any, unknown - 220814

Lumpen·2022년 8월 15일
0

TIR

목록 보기
26/40

타입

값과 값으로 할 수 있는 일의 집합

  • boolean: bool값과 bool에 수행할 수 있는 모든 연산(||, && 등)
  • number: 모든 숫자와 숫자에 적용할 수 있는 모든 연산 및 메소드
  • string: 모든 문자열과 문자열에 수행할 수 있는 모든 연산과 메소드

어떤 값이 T 타입이라면 해당 값으로 어떤 일을 할 수 있는지도 알 수 있는 것이다
타입 검사기를 통해 해당 타입의 유효하지 않은 동작을 예방하는 것이 중요하다


어떤 함수에서 number인자를 받는다면 해당 함수에 전달될 수 있는 값은 타입 계층에서 number 이하의 타입들이다
타입스크립트는 특정 타입을 명시할 수 있는 언어

타입 기초

타입 별칭(type alias), 유니온 타입, 인터섹션 타입 등 여러 가지 언어 기능도 확인한다

any

any는 타입 들의 대부라고 할 수 있다
any로는 뭐든지 할 수 있지만 되도록 아무것도 안하는 편이 좋다
타입 값을 절대 알 수 없는 경우 any로 표현할 수 있다

TSC 플래그: nolmplicitAny

타입스크립트 기본 설정은 자유를 허용하므로 any로 추론되는 값을 발견한더라도 예외를 발생시키지 않는다
tsconfig.json 파일에서 noImplicitAny를 활성화 하면
TSC 플래그의 strict 패밀리에 속하므로 strict를 활성화 했다면 따로 설정하지 않아도 된다

unknown

타입 값을 미리 알 수 없다면 any 대신 unknown을 사용하자
any 처럼 모든 값을 대표하지만, unkown의 타입을 검사해 정제하기 전까지 타입스크립트가 unknown의 값을 사용할 수 없도록 강제한다
언노운은 비교 연산과 반전을 지원하고 typeof, instanceof 연산으로 정제할 수 있다

  1. 타입 스크립트가 타입을 unkown으로 추론하는 상황은 없다 - 명시적으로 설정
  2. unknown 타입이 아닌 값과 unkown 값을 비교할 수 있다
  3. unknown 값이 특정 타입임을 가정하고 다른 타입에서 지원하는 동작을 수행할 수 없다
profile
떠돌이 생활을 하는. 실업자는 아니지만, 부랑 생활을 하는

0개의 댓글