06 接口

接口(Interface) #

接口用于定义对象的结构,指定属性、方法和索引签名,确保对象符合特定形状。

基本概念 #

接口是 TypeScript 的核心特性,用于描述数据结构。它可以定义可选属性、只读属性和函数类型。

使用场景 #

  • 定义 API 响应或请求对象的形状。
  • 在类中实现接口,确保类符合特定契约。
  • 处理动态属性时,使用索引签名。

示例代码 #

interface Person {
  name: string;
  age?: number; // 可选属性
  readonly id: number; // 只读属性
}

let user: Person = { name: "Alice", id: 1 };
// user.id = 2; // 错误,只读属性

最佳实践 #

  • 使用接口定义复杂类型,而不是类型别名,除非需要联合或交叉类型。
  • 保持接口简洁,拆分大型接口为多个小接口。
  • 结合类型守卫处理可选属性。