타입스크립트란?
- 타입스트립트는 MS에서 개발하고 관리하는 오픈소스 프로그래밍 언어입니다.
- 자바스크립트의 superset => 자바스크립트를 포괄한다. (자바스크립트+타입)
- 타입스크립트로 작성된 코드 -> 자바스크립트로 컴파일(이과정에서 타입을 체크 에러를 잡아낸다.)
장점
- 개발단계에서 버그를 좀 더 쉽게 발견할 수 있다.
(실 사용자가 맞닥뜨리는 버그 중 15%를 사전에 예방할 수 있다고 발표)
- 모든 데이터에 타입이 명시 되어 협업에 유리하다.
- 리액트로 개발할 때 컴포넌트가 가진 state나 props등을 interface로 정의하여 컴포넌트의 기능을 유추하기 쉽다.
- 자동완성 기능을 사용할 수 있다.
단점
- 러닝커브
- 레거시코드 교체비용이 비싸다.
- 개발기간이 늘어난다.(단기적으로는 그렇지만 장기적으로 보면 유지보수 비용이 낮아진다고 느낀다.)
기본타입
- boolean
- Number
- String
- Null
- undefined
- any : never를 제외한 모든 타입
- Void : null과 undefined만을 값으로 가지는 타입, 보통 함수 중 리턴값이 없는 함수들의 타입지정에 쓰인다.
- Never : 어더한 값도 없는 타입 예를 들어 에러를 던지는 함수 같은 것들.
배열, 튜플
- Array : array는 배열을 나타내는 타입이다.
ex) const pibo: number[] = [0,1,2,3,4]
ex) myFavo : string[] = ["1","dk"]
객체
const user:{name:string, height:number} =
유니온 타입
가능한 모든 타입을 파이트(|)로 연결하여 표현한다.
type example = string | number
const a: example = 뭐라뭐라
인터페이스란?
타입스크립트에서 가장 많이 쓰이는 추상화 수단이다.
인터페이스를 통해 값이 따라야 할 제약을 타입으로 표현, 인터페이스의 타입을 통해 어떤 값의 형태를 가져야 하는지 서술 할 수 있다.
이벤트 타입
event에도 타입이 있고 타입을 지정해 줘야 한다.
AS
타입을 강제하는 역할을 함.
interface State{
name : string;}
{name}=this.state as State
any
any는 타입스크립트에서 많이 쓰이지 않는다. 왜냐하면 쓰는 순간 타입스크립트를 사용하는 의미가 없어지기 때문.
'Language > JavaScript' 카테고리의 다른 글
자바스크립트 고급스럽게 쓰기 Javascript Pro Tips (0) | 2021.04.29 |
---|---|
JS 파이썬처럼 이해하기 (0) | 2020.06.24 |
Node.js 커닝페이퍼 (0) | 2020.06.24 |
JavaScript-파이썬처럼 이해하기. (0) | 2020.06.22 |