[TIL] Typescript 공부 시작 !

김은혁·2022년 11월 16일
0

Typescript

타입스크립트란 자바스크립트의 슈퍼셋인 오픈소스 프로그래밍 언어이다. 자바스크립트의 슈퍼셋이기 때문에 자바스크립트로 작성된 프로그램이 타입스크랩트 프로그램으로도 동작한다. 타입스크립트는 자바스크립트의 타입부분을 업그레이드해서 사용하고 싶을 때 설치해서 쓰는 일종의 자바스크립트 대용품이라 할 수 있다.

자바스크립트는 Dynamic typing을 지원하는 언어이기 때문에 타입에 관하여 제지를 하지 않는다. 가령 2 - '1' 이렇게 숫자와 문자를 연산해도 문제가 없이 알아서 타입을 바꿔서 연산을 해준다. 하지만 타입스크립트는 모두 에러로 처리한다. 그것이 바로 타입스크립트를 사용하는 이유이다. Dynamic typing은 작은 기능을 개발할 때는 편리하겠지만 큰 프로젝트에선 단점이 될 수 있다. 지저분한 코드나 방대한 양의 코드에서는 타입과 관련한 많은 오류가 생길텐데 타입스크립트에선 에러 메시지가 더욱 분명해지기 때문에 유리하다.

타입스크립트 설치

npm install -g typescript

타입스크립트 파일 자바스크립트로 자동 변환

tsc -w
let user :string = 'kim';
user = 123;
// error TS2322: Type 'number' is not assignable to type 'string'.

변수를 만들 때 타입지정이 가능하다. 변수명 :타입명으로 표기한다. 타입으로는 string, number, boolean, bigInt, null, undefined, [], {} 등을 사용할 수 있다.

let array :string[] = ['kim', 'lee'];
let obj:{ age: number } = { age : 26};

배열이나 객체 자료는 이렇게 타입지정이 가능하다.

type strType = string | number;
let str :strType = 'kim';

위의 예시처럼 | 기호를 사용해 or 연산자를 표현할 수 있고 type 키워드를 이용해 타입을 변수에 담아서 사용하는 것도 가능하다.

type strType = 'abc' | 'def';
let str :strType = 'abc';
let str2 : strType = 'str'; // error TS2322: Type '"str"' is not assignable to type 'strType'.

0개의 댓글