Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Chart.js
- 리액트
- 타입좁히기
- JS console
- utilty type
- 제네릭
- 반복줄이기
- returnType
- click and drag
- 공통컴포넌트
- typescript
- vue.js
- 티스토리꾸미기
- reactjs
- javascript
- React Native
- 누구나 자료구조와 알고리즘
- const 단언문
- 타입스크립트
- react
- NonNullable
- TSDoc
- 폰트적용하기
- CSS
- 2022
- React.js
- 커스텀
- 레이아웃쪼개기
- 성능최적화
- 개발콘텐츠
Archives
- Today
- Total
몽땅뚝딱 개발자
[TypeScript] Utility types - Partial, Record, NonNullable 본문
Development/Typescript
[TypeScript] Utility types - Partial, Record, NonNullable
레오나르도 다빈츠 2022. 11. 23. 15:43
◽ Partial
특정 타입의 부분 집합을 정의할 때 사용한다.
interface UserInfo {
name: string
age: number
}
type User = Partial<UserInfo>
const user1: User = {}
const user2: User = { name: 'hi' }
const user3: User = { name: 'hello', age: 20000 }
◽ Record
타입스크립트에서는 인덱스 시그니처(Index Signature)는 대괄호로 객체를 접근하는 방법을 사용할 수 있다.
인덱스 시그니처의 경우 문자열 리터럴을 key로 사용하지 못하지만, Record는 가능하다.
예제 1.
// 1. 인덱스 시그니처를 사용했을 때
type UserInfo = {
[name: string]: number
}
// 2. Record 유틸리티 타입을 사용했을 때
type UserInfo = Record<string, number>
const user: UserInfo = {
'안녕': 10000,
'HI': 20000,
'HELLO': 30000,
}
◽ NonNullable
null이나 undefined를 제외하고 타입을 구성한다.
type T = string | number | undefined
type T1 = NonNullable<T>
출처
- https://developer-talk.tistory.com/296
- https://www.typescriptlang.org/docs/handbook/utility-types.html
'Development > Typescript' 카테고리의 다른 글
[TypeScript] any 잘 사용하기 / unknown / any 타입 추적하기 (1) | 2022.12.01 |
---|---|
[TypeScript] 이렇게도 사용할 수 있다! (2) (0) | 2022.11.27 |
[TypeScript] 이렇게도 사용할 수 있다! (1) (0) | 2022.11.21 |
[TypeScript] 타입 좁히기 (0) | 2022.11.20 |
[TypeScript] as const / const 단언문 (0) | 2022.11.20 |
Comments