원시타입은 동시에 딱 하나의 값만 저장하는 타입을 말한다.배열이나 객체같이 동시에 여러개의 값을 가지는 것이 아니라 하나의 값을 가진다.타입들 간에 가장 기본이 되는 타입이라고도 할 수 있다.원시타입에는 총 다섯 가지가 있다.numberstringbooleannullu
배열과 튜플 배열 요소들의 타입이 하나일 때 배열의 타입을 정의할 때는 배열 요소의 타입에 []를 붙여서 정의한다. 요소들의 타입이 여러 개일 때 만약 배열의 요소가 한 가지의 타입만 있는 것이 아니라 여러 타입의 요소가 들어있다면 유니온 타입(|)으로 묶어주
{id, name}속성을 갖는 user객체의 타입을 지정할 때는 어떻게 하는지 알아보자.객체의 타입을 지정할 때는 타입으로 object를 적는 것이 아니라 객체 리터럴 타입으로 적어줘야 한다.객체 리터럴 타입은 각각의 객체의 속성들의 타입을 하나씩 지정하는 방법을 말한
enum 타입은 Enumerate Type으로 열거형 타입으로여러가지 값들에 각각 이름을 부여해 열거해두고 사용하는 타입을 말한다.{name, role} 속성을 가지는 user 객체가 있다.role에 숫자를 이용해서 각각 admin, user, guest 역할을 지정했
any타입과 unknown타입은 둘 다 특정 변수의 타입을 우리가 확실히 모를 때 부여할 수 있는 타입이다.하지만 두 개의 타입은 서로 다른 점을 가지고 있다.any타입은 말 그대로 어떠한 타입도 될 수 있는 타입이다.심지어 객체나 함수가 들어와도 타입 에러가 발생하지
함수 함수 타입 정의 우리가 함수를 설명할 때 하는 방법 중 하나는 이 함수가 매개변수로 어떤 값을 받고, 반환값으로 어떤 값을 반환하는지를 설명하는 방법이다. 그렇기에 함수의 타입을 정의할 때, 이와 같은 방법으로 두 가지의 타입을 정의하면 된다. 매개변수
인터페이스란 타입 별칭과 마찬가지로 타입을 만들어주는 문법이다.type과의 차이점이라면 interface는 =을 사용하지 않는다.선택적 속성과 readonly 속성도 설정 가능하다.메서드의 타입의 경우에는 함수 타입 표현식이나 콜 시그니처를 이용해서 정의할 수 있다.단
Typescript에서 클래스는 Javascript에서 처럼 필드와 생성자의 타입만 규정해주면 된다.Typescript의 클래스는 타입으로도 사용할 수 있다.클래스를 타입으로 사용하면 해당 클래스가 생성하는 객체의 타입과 동일한 타입이 된다.클래스에서의 상속은 inte
제네릭은 타입 정보를 동적으로 결정하며 유연성을 제공하는 타입을 말한다.만약 인자로 받은 값을 반환하는 함수가 있다고 가정할 때, 모든 number, string, boolean 등 모든 타입을 다 받아야 할 때 제네릭을 이용하면 된다.함수 이름 뒤에 <>를 열고
인덱스드 엑세스 타입은 타입의 인덱스를 이용해 특정 속성의 타입을 추출하는 타입이다.Post 인터페이스의 author속성의 타입인 { id: number; name: string; }을 추출하기 위해선 인덱스드 엑세스 타입을 사용하면 된다.인덱스드 엑세스 타입을 사용하
조건부 타입은 xtends와 삼항 연산자를 이용해 조건에 따라 각각 다른 타입을 정의하도록 하는 문법이다.number extends string이 참이면 number타입, 거짓이면 string타입으로 A의 타입이 결정되는 조건부 타입이다.number extends st