타입스크립트
- JavaScript + Type
- 기존 JS와 다르게 컴파일 과정을 필요로하며, 타입이 부여된 언어.
기존 JS라던가 vue.js 등 쉬운 방법이 다양한데도 어째서 타입스크립트를 사용하는 추세인지 알아보자.
1. 에러 방지
- 타입이 부여되었기 때문에 에러를 사전에 방지할 수 있다.
function sum(a: number, b: number) {
return a + b;
}
기존 JS는 타입이 없으므로 sum(a, b) 이렇게 사용했을 것이다.
JS 라면 sum(10, 10) = 20 도 OK. sum("10", "10") = "1010" 도 OK... 뭔가 이상하다.
내가 의도한 용도에서 벗어나지 않도록, 사전에 경고해주는 것이 타입스크립트의 에러 사전 방지 기능이다.
* 기존 JS의 TOP 10 에러 중 8개가 타입 관련 에러였고, 이런 문제는 실서비스에서 크리티컬할 수 있는데... TS기 혜성같이 등장했다.
2. 코드 자동 완성
- vsc 의 툴이 타입스크립트로 작성되어 타입스크립트 개발이 최적화 되어있다.
// math.js
function sum(a, b) {
return a + b;
}
var total = sum(10, 20);
total.toLocaleString();
위와 같은 예시 코드에서, JS의 경우 total.toLo.... 을 작성할 때 자동완성이 되지 않는다.
이유는 당연히 total 이라는 값이 정해져있지 않기 때문이다.
function sum(a: number, b: number): number {
return a + b;
}
var total = sum(10, 20);
total.toLocaleString();
반면, tsx 는 total 타입이 지정이 되어있으므로 자동완성이 지원된다.
이외에도 많은 이유로 FE에서 TypeScript 를 도입했고, 우리 파트에서도 FE 단에서는 타입스크립트 + a 를 도입하기로 했다.
기존 JS의 상위 확장자로써... 기존 JS 스크립트들도 무리없이 컴파일 시켜 실행이 가능하므로 도입하지 않을 이유가 없었다.
'언어 > TypeScript' 카테고리의 다른 글
| Union Type, Intersection Type (0) | 2025.04.14 |
|---|---|
| enum 자료형 (0) | 2025.04.13 |
| 인터페이스 (0) | 2025.04.13 |
| 함수 (0) | 2025.04.11 |
| 기본 타입 (0) | 2025.04.11 |