자료형 : 변수의 값으로 들어가는 데이터들의 숫자,문자열,참/거짓 같은 종류
정적타입 : 컴파일언어가 해당되고, 변수등에 저장된 자료형을 바꿀 수 없다
동적타입 : 인터프리터 언어가 해당되고, 변수에 얼마든 다른 자료형의 값을 넣을 수 있다
컴파일 언어(자바) : 코딩을 마치고 나면 프로그램 코드를 컴파일이란 과정을 통해서 다른 형태로 바꿔주게 됨.
인터프리터 언어(자바스크립트, 파이썬) : 코딩 후 다른 과정을 거치지 않고 개발자가 작성한 코드를 그대로 번역해서 실행됨.
컴파일링과 인터프리팅은 주어진 언어를 실행하는 서로 다른 방식일 뿐.
자바스크립트에도 컴파일과정이 있고, C언어에도 인터프리팅과정이 있음.
동적타입 언어는 간단한 코드를 짤 땐 편하지만 자료형이 잘못들어가면 실행단계에 가서야 런타임오류가 확인됨.(코딩할땐 자료형에 의한 오류를 신경써야함.)
이런 동적타입인 JS를 보완하기위해 만들어진게 TypeScript이다.