타입스크립트 컴파일 에러 예시
//index.ts
const getMessageByKey = (userKey: string) => {
const [userId, tag] = userKey.split(':');
const message = messageRepo.findOne({ where: {userId, tag} });
//....
};
//컴파일 에러
getMessageByKey(3927);
Javascript 코드(런타임 에러)
//index.js
const getMessageByKey = (userKey) => {
const [userId, tag] = userKey.split(':');
const message = messageRepo.findOne({ where: {userId, tag} });
//....
};
//런타임 에러
getMessageByKey(3927);
Typescript의 정적 타입을 사용하게 되면 컴파일 단계에서 타입체크를 하면서 바로 버그를 catch해서 코드를 수정하여 코드의 안정성이 높아지는 장점이 있다.
TypeScript는 class, interface 등 및 상속과 같은 기능을 지원하는 OOP 언어 구조를 따르는 JS로 트랜스 컴파일하는 대형 애플리케이션을 위해 개발되었다.
전반적으로 TypeScript는 유지 관리가 쉽고 코드 구성에 적합하며 프로젝트 생산성을 향상시킨다.
또소규모 웹 프로젝트에서 작업할 때 JavaScript가 여전히 선호되는 반면, 복잡한 프로젝트를 처리할 때는 TypeScript가 이상적인 선택이 될 수 있다.
출처: https://choseongho93.tistory.com/319 [TROLL:티스토리]