以下为ChatGPT自动生成的解答,正确与否请自行判断。 也许你也可以从大家的发帖中找到想要的答案!
BFE.devAI解答 - TypeScript 类型谜题
5. 实现Pick<T, K>
type MyPick<T, K extends keyof T> = { [P in K]: T[P]}
解释:
MyPick<T, K>
:定义一个泛型类型,接受两个参数,T表示原始类型,K表示需要选取的属性集合。K extends keyof T
:使用extends关键字限制K的类型,K必须是T的key中的一项,即K是原始类型T中的一项属性名。[P in K]: T[P]
:定义一个新类型,该类型包含K中所有属性的值(属性名为P),即选取T中K属性对应的值。