TypeScript 기초
TypeScript
JavaScript 기반의 프로그래밍 언어
TypeScript is JavaScript with syntax for types
코드 실행 '전' 타입 실수나 오류를 막기위한 안전장치
Installation (w/React)
CRA, styled-components 오류 발생 시
TypeScript 개요
타입 추론 Types by Inference
TS는 JS를 기반으로 하기 때문에 대부분의 경우 타입을 생성해줌
생성과 동시에 특정 값을 할당하는 경우, 그 값을 해당 변수의 타입으로 사용함
타입 정의 Defining Types
몇몇 디자인 패턴은 자동으로 타입을 제공하기 힘들 수 있음
따라서 명시가능한 JS의 확장을 지원함
이 객체의 형태를 명시적으로 나타내기 위해서
interface
로 선언함변수 선언 뒤에
: TypeName
의 구문을 사용해 객체가interface
의 형태를 따르고 있음을 선언할 수 있음interface
는 클래스로도 선언할 수 있음interface
는 함수에서 매개변수와 리턴 값을 명시하는데 사용되기도 함
타입 구성 Composing Types
여러 타입을 이용하여 새 타입을 작성하기 위한 방법으로
유니언Union
과제네릭Generic
이 있음
유니언 Unions
타입이 여러 타입중 하나일 수 있음을 선언하는 방법
유니언이 가장 많이 사용되는 사례 중 하나는 다음과 같이 허용되는 string 또는 number의 리터럴 집합을 설명하는 것
함수가 다양한 타입을 처리하는 방법을 제공함
제네릭 Generics
제네릭은 타입에 변수를 제공하는 방법
제네릭이 있는 배열은 배열 안의 값을 설명할 수 있음
구조적 타입 시스템 Structural Type System
TS의 핵심 원칙 중 하나는 타입 검사가 값이 있는 형태에 집중한다는 것
때때로
duck typing
또는structural typing
이라고 불림구조적 타입 시스템에서 두 객체가 같은 형태를 가지면 같은 것으로 간주됨
객체 또는 클래스에 필요한 모든 속성이 존재한다면, TS는 구현 세부정보에 관계없이 같은 것으로 봄
Last updated