[typescript] Typescript 시작
typescript는 기본적으로 javascript와 같은 문법을 사용하나 아래와 같은 내용에 다소 차이가 있다.
Typescript 특징
- 변수에 자료형을 지정한다
- 자동 형 변환을 지원하지 않는다.
- Error message가 정확하다.
설치방법
npm install -g typescript
※ node.js 최신버전 설치 필수
파일 생성 및 이용
-
확장자
.ts
이용하여 생성한다. -
브라우저는 typescript를 읽을 수 없으므로 브라우저로 읽히기 전 javascript로 컴파일 해야한다. 컴파일 명령어 :
tsc -w
-
.ts
파일과 같은 폴더 내에tsconfig.json
이라는 파일이 꼭 있어야한다. 이는 ts를 js로 컴파일 할 때의 옵션을 명시해둔 파일이다.{ "compilerOptions": { "target": "es5", // ECMA Script 규격 "module": "commonjs" // module system } }
문법
-
변수선언 시 자료형을 명시한다.
string
,number
,boolean
,null
,undefined
,bigint
,[]
,{}
등let 변수명 :string = 'A'; let 변수명 :string | number = 'kim' // union type 두 자료형 중 한가지 사용을 의미한다. let 배열명 :stirng[] = ['A', 'B'] let 배열명 :[string, number] = [] // tuple type 배열[0]의 자료형은 string, 배열[1]의 자료형은 number let 객체명 :{ name:string, age?:number } = { name:'A'} // { key:자료형 } 형태로 선언한다. key? 형태는 해당 속성이 입력되지 않을 수 있다. 를 의미한다. let 객체명 :{ [key: string]: string } // key의 자료형이 string일 경우 value의 자료형은 string으로 정한다. 를 의미한다. type 타입이름 = string | number | number[] let 변수명 :타입이름; // type alias 타입을 변수에 담아 사용할 수 있다.
-
함수 선언 시 자료형을 명시한다.
function f(name :string) :number { return 1 } //function 함수명(매개변수명 :자료형) :리턴값의 자료형 { }