TS, JS 작동 원리

프로그램은 어떻게 작동하는가?

  1. 컴파일러가 텍스트를 AST(추상문법트리) 자료구조로 변환.
  2. AST를 바이트코드로 변환
  3. 런타임에 바이트 코드를 평가(실행)

JS는 기본적으로 컴파일러가 필요없는 인터프리터 언어이다.

JS는 브라우저, Node와 같은 자바스크립트 엔진에 의해 AST와 바이트코드로 변환된다.

TS는 그 전 단계에서 타입스크립트 코드를 타입스크립트 AST로 변환하여 타입 검사기(Checker)가 타입을 검사한다. 이후 자바스크립트 AST로 변환하고 위의 단계를 따른다.

Untitled

즉 TS가 컴파일러에 의해 TS AST로 변환되고 타입 체크가 일어난다. 따라서 타입 체크는 컴파일 타임에 발생하게 된다.

타입 시스템

타입스크립트는 tsc(컴파일러)와 ts server를 제공한다.

유닛 타입: type A: ‘A’

유니온 타입: type AB = ‘A’ | ‘B’