type MyPick<T, K extends keyof T> = {
[P in K]: T[P]
}
Solution by notsecret32 #33604
// your answers
Solution by ralphjzhang #33603
type MyPick<T, K extends keyof T> = {
[key in K] : T[key]
}
Solution by okasyun #33585
// 你的答案
type MyPick<T, K extends keyof T> = {
[P in K]: T[P]
}
Solution by 95y #33580
type MyPick<T, K extends keyof T> = {
[P in K] : T[P]
}
Solution by Jaewoneeee #33569
// 你的答案
type Pick<T, K extends keyof T> = {
[P in K]: T[P]
}
Solution by heyuelan #33568
type MyPick<T extends Record<string, any>, K extends keyof T> = {
[k in K]: T[k]
}
Solution by Danny101201 #33564
type MyPick<T, K extends string> = {
[key in K]: key extends keyof T ? T[key] : undefined;
};
Solution by ouermaimeng #33548
type MyPick<T, K extends keyof T> = {
[k in K]: T[k]
};
Solution by oo009pbh #33545
type MyPick<T, K extends keyof T> = {
[Prop in K]: T[Prop]
}
Solution by Kolufs #33516
type MyPick<T, K extends keyof T> = {
[key in K] : T[key]
}
Solution by brown2243 #33461
// keyof T를 이용해 K는 T의 Keys를 가지도록 함
type MyPick<T, K extends keyof T> = {
// 타입 매핑 구분
// K의 key를 반복, 해당 key의 반환타입을 지정 => key: T[key]
[k in K]: T[k]
}
Solution by kukjun #33452
type MyPick<T, V extends keyof T> = { [v in V]: T[v]; }
This rids the errors from the code in the TypeScript playground, utilizing the extends keyof T to constrain V and keep it to only being an available property of T.
Solution by asorichetti #33396
// your answers
Solution by millordd #33373
// 你的答案
type MyPick<T, K extends keyof T> = {
[key in K]: T[key]
}
Solution by chenjieya #33347
// 你的答案
type MyPick<T, K extends keyof T> = {
[Key in K]: T[Key]
}
Solution by lvdengming #33328
// 여기 풀이를 입력하세요
type MyPick<T, K extends keyof T> = {
[P in K]: T[P]
};
Solution by awesomelon #33317
// your answers
type MyPick<T,K extends keyof T> ={
[key in K]: T[key]
}
Solution by Skytim #33286
// 你的答案
type MyPick<T, K extends keyof T> = {
[P in K]: T[P];
}
Solution by UkiyoLee #33282
type MyPick<T, K> = {
[P in keyof T as P & K]: T[P]
}
Solution by xinyin1010 #33188
type MyPick<T, K extends keyof T> = {
[R in K]: T[R]
}
Solution by daishi-motoyama #33183
type MyPick<T, K extends keyof T> = {
[Key in K] : T[Key]
}
Solution by seoksanghwan #33157
// your answers
type MyPick<T, K extends keyof T> = {
[k in K]: T[k];
};
Solution by sarda10v #33153
type MyPick<T, K extends keyof T> = {
[P in K]: T[P]
}
Solution by Tubring25 #33147
type MyPick<T extends Todo, K extends keyof T> = {
[key in K]: T[key]
}
Solution by peznc810 #33135
type MyPick<T extends {[key in string]:any}, K extends keyof T> = {[key in K]:T[key]}
Many correct answers do not limit the type of T to objects. I think it would be better to limit this to objects and raise an error when making a mistake where you use it, what do you think? if I am wrong, please let me know!
Solution by kimtaejin3 #33125
type MyPick<T, K extends keyof T> = {[key in K]:T[key]}
Solution by loevray #33123
type MyPick<T, K extends keyof T> = {[key in K] : T[key]}
Solution by seoksanghwan #33121
type MyPick<T, K extends keyof T> = {
[key in K]:T[key]
}
Solution by XiaofeiCY #33086