《TypeScript实战指南》—2.1.7 iterator和generator
706
2022-05-29
2.2.5 类型别名
简而言之,类型别名就是可以给一个类型起一个新名字。
如果你学过 C 语言,可能还记得 alias 关键字,不过在 TypeScript 中,我们使用 type 关键字来描述类型变量:
type Age = number;
type AgeCreator = () => Age;
function getAge(arg: AgeCreator): Age {
return arg();
}
使用别名并不会在类型系统中新建一个基本类型,当然新建基本类型也是永远不可能的。使用别名只是为某个类型或者类型集合创建了一个新名字。虽然给基本类型起一个别名通常没什么用,但大家还是热衷于这么做,因为这样可以减少文档的编写量。谁会喜欢写文档呢!
当然,类型别名也可以是泛型:
type Person
也可以使用类型别名在属性里引用自己,这听起来很像递归:
type Person
name: T;
mother: Person
father: Person
}
这使得类型编排非常复杂。当然,这种复杂性是为了描述的准确性。正如上面的例子,mother 和 father肯定也是 person。这样在代码中看上去有点不可思议的操作,在现实世界中却是非常真实合理的。
TypeScript
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。