Tuple 타입 = 자바스크립트에는 없는 타입스크립트에 있는 새로운 기능으로 고정된 길이를 갖는 배열 타입을 의미
Enum 타입 = 자바스크립트에는 없는 타입스크립트에 있는 새로운 기능으로 열거형으로 이름이 있는 상수들의 집합을 정의할 수 있다, 열거형
Union 타입 = string | number | boolean 등 한가지가 아닌 여러개의 다른 타입을 받을때 파이프기호(|) 사용 => 타입스크립트를 좀더 flexible 하게 만들어주기위해서 사용
리터럴(literal) 타입 =
리터럴 타입은 변수 혹은 매개변수 등이 string이나 number 처럼 어떠한 포괄적인 타입을 가지는 것이 아니라 변수나 매개변수에 정확한 값을 설정하는 것을 의미, TypeScript에는 문자열과 숫자, boolean 세 가지 리터럴 타입이 있는데 이를 사용하면 문자열이나 숫자에 정확한 값을 지정할 수 있다.
const helloWorld = "Hello World";
let hiWorld = "Hi World";
위 예시에서 helloWorld는 문자열이 아닌 "Hello World"로 타입을 정하지만 hiWorld는 변경될 수 있으므로 문자열로 선언한다.
Union 과 any 의 차이?
Type alias, 사용자 정의 타입
기존
Type alias 사용자정의타입 추가
복잡할 수 있는 객체 타입에도 별칭을 붙일 수 있다.
// typescript
type User = { name: string; age: number };
const u1: User = { name: 'Max', age: 30 }; // this works
타입 별칭을 사용하면 불필요한 반복을 피하고 타입을 중심에서 관리할 수 있다.
타입 별칭 적용전
//typescript
function greet(user: { name: string; age: number }) {
console.log("Hi, I am " + user.name);
}
function isOlder(user: { name: string; age: number }, checkAge: number) {
return checkAge > user.age;
}
적용후
//typescript
type User = { name: string; age: number };
function greet(user: User) {
console.log("Hi, I am " + user.name);
}
function isOlder(user: User, checkAge: number) {
return checkAge > user.age;
}
'언어 > 타입스크립트' 카테고리의 다른 글
[Typescript] 컴파일러 및 구성, tsconfig.json 옵션들[01] (0) | 2022.03.12 |
---|---|
[Typescript] 사용자정의 타입, 함수타입, unknown type, 절대타입 (0) | 2022.03.12 |
[typescript] 함수 반환타입 (0) | 2022.02.22 |
[Typescript] 타입 type (0) | 2022.02.21 |
[Typescript] 설정 (0) | 2022.02.20 |