type和interface

2026 年 2 月 17 日 星期二
4

type和interface

先说结论:平时开发:使用 type 作为首选;发布工具库时:使用 interface,它允许声明合并和类型扩展,这对于用户使用库在做扩展修改接口时是一个很有用的特性。

interface 注重 结构化类型定义,强调描述对象本身的形状。 type 可为任何类型(包括原始类型、联合类型、元组等)和动态生成属性操作符 keyof、in、infer等,用途更广泛。

继承

interface 通过 extends 关键字实现继承 type 通过交叉类型 & 实现继承

重写

interface 当interface重写时,如果有不同的属性,则会添加;如果是相同的属性但是类型不同,则会报错。 type 不支持

开发体验

如图所示,我鼠标悬浮后,并不知道里面是什么东西 只能获取结果时调出代码提示,或者ctrl + 鼠标左键进入,查看类型定义。

那么我用type呢?可以看到,现在鼠标悬浮能直接查看类型定义了 这一点是让我最受不了的,所以直接选择type即可

使用社交账号登录

  • Loading...
  • Loading...
  • Loading...
  • Loading...
  • Loading...