我看到很多 TypeScript 开发人员过度使用接口。事实上,他们几乎将它用于所有事情,即使他们的代码比面向对象更实用。就我个人而言,我更喜欢type哪个更灵活,并且如果接口由任何类实现或者仅用于定义对象类型,则不会混淆。是否有任何优势可以使用,interface或者type它是开发人员习惯做的某种遗留的事情吗?
的预期用途type是类型的别名,特别是交集/联合类型。
它们不应该像接口一样使用,如文档所述:
\n\n\n正如我们提到的,类型别名的作用有点像接口;然而,存在一些细微的差别。
\n一个区别是接口创建了一个到处使用的新名称。例如,键入别名不要\xe2\x80\x99t 创建新名称\xe2\x80\x94,错误消息不会\xe2\x80\x99t 使用别名。在下面的代码中,
\ninterfaced将鼠标悬停在编辑器中将显示它返回一个Interface,但将显示aliased返回对象文字类型。Run Code Online (Sandbox Code Playgroud)\ntype Alias = { num: number }\ninterface Interface {\n num: number;\n}\ndeclare function aliased(arg: Alias): Alias;\ndeclare function interfaced(arg: Interface): Interface;\n
| 归档时间: |
|
| 查看次数: |
1954 次 |
| 最近记录: |