반응형
[TypeScript] Indexed Access Types 및 Mapped Types
Language/TypeScript2024. 5. 13. 13:08[TypeScript] Indexed Access Types 및 Mapped Types

이번 글에서는 TypeScript의 타입 시스템을 크게 향상시키는 두 가지 강력한 기능을 살펴보는 여정을 시작합니다.Indexed Access Types조회 타입이라고도 하는 인덱싱된 액세스 타입을 사용하면 키를 기반으로 객체에서 프로퍼티 타입을 조회할 수 있습니다. 이 구문은 대괄호 안에 키 타입이 들어 있는 대괄호를 사용합니다.type Person = { name: string; age: number; city: string;};type AgeType = Person['age']; // number이 예제에서 Person['age']는 Person 타입에서 'age' 속성의 타입을 검색합니다.Mapped Typestype Flags = { option1: boolean; option2: bo..

[TypeScript] 고급 타입, 매핑된 타입, keyof/typeof
Language/TypeScript2024. 4. 30. 11:53[TypeScript] 고급 타입, 매핑된 타입, keyof/typeof

이 글에서는 고급 타입, 매핑된 타입, 강력한 keyof/typeof 연산자를 살펴봅니다. TypeScript의 표현형 타이핑 시스템의 중추라고 할 수 있는 이러한 기능을 사용하면 정교하고 정확한 타입 정의를 생성하여 코드를 새로운 차원으로 끌어올릴 수 있습니다.고급 타입TypeScript에서 "advanced types"은 일반적으로 더 복잡한 타입 정의를 만들 수 있는 기능과 구성을 의미합니다. 고급 타입의 몇 가지 예로는 Union 타입, Intersection 타입, Conditional 타입, Mapped 타입 등이 있습니다.Union Typetype MyUnion = string | number;Union 타입은 여러 타입 중 하나가 될 수 있는 값을 설명합니다. 세로 막대(|)를 사용하여 각..

[NestJS] Mapped types의 Partial 사용 방법
Backend/NestJS2023. 6. 29. 13:04[NestJS] Mapped types의 Partial 사용 방법

Mapped types CRUD(Create/Read/Update/Delete)와 같은 기능을 구축할 때 기본 엔터티 클래스를 기능에 맞게 변형하는 것이 필요한 경우가 많습니다. Nest는 이 작업을 보다 편리하게 만들기 위해 클래스 변환을 수행하는 여러 유틸리티 기능을 제공합니다. Partial input validation types(DTO라고도 함)을 빌드할 때 동일한 클래스에 대한 create 및 update 클래스로 변형하는 것이 필요한 경우가 많습니다. 예를 들어, create에는 모든 필드가 필요할 수 있지만 update는 모든 필드를 선택 사항으로 만들 수 있습니다. Nest는 이 작업을 더 쉽게 만들고 보일러플레이트(Boilerplate) 코드를 최소화하기 위해 PartialType() ..

반응형
image