JavaScript의 타입은
동적 타입
으로,런타임에 타입이 결정
된다.
런타임에 타입이 결정되므로 console.log('5' + 2)
를 했을 때 결과값이 7이 아닌 52가 되는 논리적 오류가 발생한다.
하지만 TypeScript의 타입은
정적 타입
으로,개발할 때 타입을 미리 지정
한다.
개발자가 개발하는 단계에서 타입을 미리 지정하므로, 위와 같은 에러가 개발 단계에서 발생한다. 그러므로 버그를 런타임이 아닌 개발 단계에서 찾을 수 있다는 장점이 있다.
타입 | 예시 | 설명 |
---|---|---|
number | 1, 4.5, -10 | 다른 언어와는 달리, JavaScript와 TypeScript의 숫자는 하나의 타입이다. |
string | 'Hi', "Hi", 템플릿 리터럴 | 문자열 |
boolean | true, false | |
object | {age: 30} | TypeScript의 객체는 여러 종류가 있다. |