![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
type-challenges 学习手册
github 上有一个 type-challenges 项目,是一个 TypeScript 的编程题合集,可以让我们更好地了解 TS 的类型系统。本专栏为这些题目记录了我学 TS 的学习过程,提供了我自身的理解和思考。
checklittlelee
这个作者很懒,什么都没留下…
展开
-
《Type Challenges》7 - 对象属性只读
【代码】《Type Challenges》7 - 对象属性只读。原创 2024-05-13 22:33:43 · 158 阅读 · 1 评论 -
《Type Challenges》4 - 实现 Pick
【代码】《Type Challenges》4 - 实现 Pick。原创 2024-05-13 22:05:52 · 354 阅读 · 1 评论 -
《Type Challenges》14 - 第一个元素
我们在定义类型别名的时候,已经约束了 'T' 必须是一个数组类型,但是 'T' 仍然有可能是一个空数组类型,因此我们用 '[infer F, ...any[]]' 这个元组类型来安全处理它是空数组的情况。在我的代码中,定义了一个名为 'First' 的泛型类型别名,泛型 'T extends any[]' 表示T是一个数组类型,可以是 'number[]'、'string[]' 等任何类型的数组,包括空数组 '[]',不确定数组中元素的类型,但一定是某一种数组。类型推断('infer')原创 2024-03-19 23:26:48 · 251 阅读 · 0 评论 -
《Type Challenges》13 - Hello World
可以给任何类型起一个名字,包括原始类型、联合类型、元组类型等等;不能被扩展(extends) 或 实现(implements);类型别名用来给一个类型起个新名字,使得类型更易于理解和使用。通常用来定义对象的形状。可以被扩展 和 实现。原创 2024-03-19 22:14:31 · 164 阅读 · 1 评论