TypeScript = JavaScript + Type 문법
JavaScript는 Dynamic Typing이 가능하기 때문에 5 - 3
뿐만 아니라 5 - ’3’
도 가능하다. ’3’가 String Type이어도 JS가 알아서 숫자 3으로 바꿔 연산을 하기 때문인데, 이는 편리하기도 하지만 프로젝트 규모가 커지고 코드가 길어질수록 이러한 자유도와 유연성은 단점으로 작용한다.
반면 TypeScript는 Type을 엄격히 검사해 준다. 또한 타입스크립트는 이러한 Type 불일치나 문법명 오타 등으로 인해 발생하는 Error들을 정확한 Error Message를 통해 알려준다. (에러메세지 퀄리티 Good👍🏻)
$ npm install -g typescript
React 프로젝트 생성할 때 같이 설치하는 방법 (권고)
$ npx create-react-app 프로젝트명 --template typescript
React 프로젝트가 이미 진행 중인 경우 설치하는 방법
$ npm install --save typescript @types/node @types/react @types/react-dom @types/jest
Vue 프로젝트에서 TypeScript 사용하고 싶은 경우
작업 폴더 경로에서 터미널로 라이브러리 설치: $ vue add typescript
vue 파일에서 lang 옵션 기재
<script lang="ts"></script>
💡 Compile TypeScript into JavaScript
.ts파일 생성하여 TypeScript 작성 후 브라우저에 적용하려면 변환(compiling) 작업이 필요하다!
브라우저는 JavaScript만 읽을 수 있기에 .ts라는 TypeScript 파일은 JavaScript로 변환해줘야 한다.
이러한 변환 과정을 거치기 전에 변환관련 옵션을 설정하는 파일인tsconfig.json
를 생성해 준다.
tsconfig.json
파일 생성$ tsc --init
// tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
}
}
// target: JS로 변환할때의 ECMA 버전
// module은 commonjs가 대표적
tsconfig.json
파일을 생성하고 작성해 주었다면 다음은 변환 파일을 생성하는 명령어를 입력한다.$ npx tsc
$ npx tsc -w