채린씨의 티스토리
[TypeChallenges] 4. Pick (easy) 본문
문제
Implement the built-in Pick<T, K> generic without using it.
Constructs a type by picking the set of properties K from T
For example:
interface Todo {
title: string
description: string
completed: boolean
}
type TodoPreview = MyPick<Todo, 'title' | 'completed'>
const todo: TodoPreview = {
title: 'Clean room',
completed: false,
}
(출처: https://github.com/type-challenges/type-challenges/blob/main/questions/00004-easy-pick/README.md)
나의 풀이
TypeScript의 내장 유틸리티 타입인 Pick을 직접 구현하는 문제였다!
type MyPick<T, K extends keyof T> = {
[Key in K]: T[Key]
}
참고자료
1. 제네릭이란?
https://joshua1988.github.io/ts/guide/generics.html
제네릭 | 타입스크립트 핸드북
제네릭(Generics)의 사전적 정의 제네릭은 C#, Java 등의 언어에서 재사용성이 높은 컴포넌트를 만들 때 자주 활용되는 특징입니다. 특히, 한가지 타입보다 여러 가지 타입에서 동작하는 컴포넌트를
joshua1988.github.io
2. Pick이란?
유틸리티 타입 | 타입스크립트 핸드북
유틸리티 타입이란? 유틸리티 타입은 이미 정의해 놓은 타입을 변환할 때 사용하기 좋은 타입 문법입니다. 유틸리티 타입을 꼭 쓰지 않더라도 기존의 인터페이스, 제네릭 등의 기본 문법으로 충
joshua1988.github.io
'FE > TypeScript' 카테고리의 다른 글
[TypeChallenges] 7. Readonly (easy) (0) | 2023.03.24 |
---|---|
[TypeChallenges] 13. Hello World (warm-up) (0) | 2023.03.24 |
Comments