타입스크립트는 자바스크립트로 컴파일되는, 자바스크립트의 타입
이 있는 상위집합
이다
다시말해, 정적 타입 시스템(static type system)을 도입한 자바스크립트이다.
1) typescript를 로컬 패키지로 설치하기
$ yarn add typescript
2) 다음에는 package.json 파일을 열어서 다음과 같이 build 스크립트를 만들고
{
"name": "ts-practice",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"dependencies": {
"ts-node": "^8.4.1",
"typescript": "^3.6.3"
},
"scripts": {
"build": "tsc"
}
}
3) 추후 빌드를 할 때
yarn build
npx create-react-app my-app --template typescript
# or
yarn create react-app my-app --template typescript
npm install --save typescript @types/node @types/react @types/react-dom @types/jest
# or
yarn add typescript @types/node @types/react @types/react-dom @types/jest
이런식으로 width, height 멤버 변수를 선언한 다음에 constructor 에서 해당 값들을 하나 하나 설정해주었는데, 타입스크립트에서는 constructor 의 파라미터 쪽에 public 또는 private accessor
를 사용하면 직접 하나하나 설정해주는 작업을 생략해줄 수 있다.
제네릭(Generics)은 타입스크립트에서 함수, 클래스, interface, type을 사용하게 될 때 여러 종류의 타입에 대하여 호환을 맞춰야 하는 상황에서 사용하는 문법이다.