" javascript는 typescript의 슈퍼 셋이다. "
= 하위 호환성을 지원 + 추가적인 기능 제공
js가 제공하지 못하고, 앞으로도 js가 제공하지 못할 것
=> 명시적인 유형 설명, 데이터에 대한 설명
이 부분을 typescript가 제공
let age = 10;
let x = 10;
let weight = 50;
이름으로 알 수 있게 표기, 숫자인지 문자인지 표기 x (어떠한 유형인지 표기 x)
type Centimeter = number;
type RainbowColor = 'red' | 'orange' | 'Yellow' | 'green' |'blue' | 'indigo' | 'puple';
let weight: number = 50;
let height: Centimeter = 168;
let color: RainbowColor = 'red';
color = 'black' // Error
명시적인 데이터의 유형 설명 가능, 타입을 정의하여 단위나 그 이외의 것 설명 가능
=> 오류 가능성을 줄임
코드의 유지보수(수정, 담당 개발자의 변화 등)를 위해서 안정성 있고 효율적이게 한다.