TypeScript: 정적 타입 검사

TypeScript 검사와 실행

TypeScript의 타입 정보는 개발 도구와 컴파일 단계에서 쓰입니다. 런타임에 도착하는 결과물은 타입 문법이 제거된 JavaScript입니다.

기본 파이프라인

1

작성한 코드

타입 주석과 인터페이스로 값의 모양을 표현합니다.

let value: number = 10; value = "hello";
2

타입 검사 / 타입 오류 발견

컴파일러가 실행 전에 타입 약속을 어긴 코드를 보고합니다.

Type error: string is not assignable to number
3

수정 후 타입 문법 제거

타입 오류를 고친 코드가 통과하면 JavaScript 출력물이 만들어집니다.

let value = 10; value = 20; // types erased
4

런타임 실행

브라우저 / Node.js는 최종 JavaScript를 실행합니다.

Browser / Node.js executes JavaScript

JavaScript와 비교하면

구분
작성 단계
실행 전
실행 시점
JavaScript
값 중심 타입 표기 없이 빠르게 작성
별도 타입 검사 없음 테스트나 실행 중 오류로 발견
런타임에서 판단 값의 실제 타입에 따라 동작
TypeScript
타입 의도 포함 명시 타입과 타입 추론을 함께 사용
정적 타입 검사 리팩터링과 협업 중 오류를 먼저 노출
JavaScript 실행 타입은 제거되고 결과 코드가 실행