마이크로소프트에서 구현한 JavaScript의 슈퍼셋(Superset) 프로그래밍 언어
확장자로는 .ts를 사용하며, 컴파일의 결과물로 JavaScript 코드를 출력
최종적으로 런타임에서는 이렇게 출력된 JavaScript 코드를 구동
TypeScript는 Node.js 런타임 뿐 아니라, JavaSciprt의 고향인 프론트엔드 개발에서도 상당히 유용함
또한 프론트엔드와 백엔드를 모두 TypeScript로 구현한다면,
비교할 수 없을 정도로 높은 개발 안정성과 편의성을 확보
프론트엔드-백엔드 상호간 데이터 통신을 위해 일반적으로 JSON형식의 REST API를 구현
이때 프론트엔드-백엔드간의 데이터 포맷을 타입으로 정의하여,
이를 양측에서 공통으로 참조하도록 구현하여,
프론트-백엔드 개발자 사이의 커뮤니케이션 필요도를 줄여주는 장점이 있음
React.js와 React Native를 가리지 않고 타입스크립트 사용이 가능
React의 경우는 특히나 Function Component, Hooks와 함께 타입스크립트를 사용한다면 이전에 클래스 컴포넌트를 사용할때보다 훨씬 쉽게 개발이 가능