Typescript(이하 TS)는 Javascript(이하 JS)의 상위 확장자로서 js 변수의 타입을 정의한 언어이다.
TS는 JS의 엔진을 사용하기 때문에 실행시 JS로 컴파일 되어 동작한다.
JS는 동적 타입 언어로 변수의 타입이 런타임 중에 결정되어 에러를 발견하기 쉽지 않다.
TS는 정적 타입 언어이기 때문에 컴파일 단계에서 타입을 체크하게 되어 보다 빠르게 에러를 발견하고 버그를 예방할 수 있다.
대규모 프로젝트나 협업시에 어떠한 타입이 요구되고 리턴되는지 확인 하기위해 여러 파일을 살펴 볼 필요가 없어지기 때문에 생산성, 유지보수성이 오르게 된다.
JS의 슈퍼셋이기 때문에 대규모 수정 없이 JS프로젝트에 TS를 바로 적용 하는 것도 용의 하며, 일부 기능에만 TS를 적용하는 것 또한 가능하기 때문에 점진적으로 전환 하는 것 또한 가능하다.