타입스크립트?
MS에서 만든 오픈소스 프로젝트
Superset of JavaScript로 JS가 기반이므로, JS가 돌아가는 환경이라면 활용 가능.
타입 결정 순간
JS는dynamically typed되므로 컴파일 단계에서 찾지 못하고 런타임 에러가 터지는 경우가 많다. 빠르게 프로토타입 잡는 데에는 장점이 되겠지만, 규모가 커질수록 에러 잡기도 어려워 단점으로 작용한다.- 가독성도 떨어짐 ( 한눈에 어떤 데이터를 담는 변수인지 모르므로 )
 
TS는Statically Typed되므로 컴파일 에러로 대부분의 에러를 잡을 수 있다는 큰 장점이 있다.
객체지향?
JS도Prototype-based로 객체지향 설계가 가능하며생성자 함수도 지원하고클래스도 생겼지만, 이것만으로는 강력한 객체지향 프로그래밍을 짜기에는 한계가 있다.
TS에는 다른 객체지향 언어들처럼interface,class,generics,types등도 활용할 수 있어 더욱 막강한 객체지향 프로그래밍이 가능하다.
JS가 돌아가는 환경이라면 OK
TS는 JS위에 얹어져 있다고 생각하면 됨.
- TS를 그대로 쓰는 게 아니라 JS로 transcompile을 거쳐 실행하므로 JS가 돌아가는 환경이면 됨.
 
컴파일러?
TS → JS로 변환해줄 컴파일러는 타입스크립트 툴 자체에서 제공하는 컴파일러 또는 
Babel을 써도 됨.어떤 ES 버전으로 변환할 지 설정하여 모든 브라우저에서 동작 가능하도록 변환 가능.