TypeScript 挑战(一)- 实现Pick
记录下学习过程
题目是这样的
无需使用内置的Pick<T, K>
泛型即可。
通过从K
中选择属性T
来构造类型
例如
1 | interface Todo { |
继续之前推荐大家去typescript官网的playground,因为里面提供了自动语法检测的功能
比如上面的题目,可以去这里,点击这里打开就能跳转过去
默认情况下,测试用例如下
1 | /* _____________ 测试用例 _____________ */ |
然后需要我们完成的代码如下
1 | /* _____________ 你的代码 _____________ */ |
只要完成“你的代码部分”,测试用例部分的错误提示就会消失
答案我公布下,参考别人的
这个值得仔细斟酌下,我感觉我都看不懂了
1 | type MyPick<T, K extends number | string | symbol> = { [k in K]: k extends keyof T ? T[k] : never} |