Interface 接口定义
typescript · beginner · 15-20 min · Step 1/3TypeScript Interface
interface User {
name: string;
age: number;
email?: string; // 可选属性
readonly id: number; // 只读属性
}
const user: User = { id: 1, name: 'Alice', age: 25 };
接口继承
interface Employee extends User {
department: string;
salary: number;
}
函数类型接口
interface SearchFunc {
(query: string, limit?: number): string[];
}
Interface vs Type
| 特性 | interface | type |
|---|---|---|
| 扩展 | extends | & 交叉 |
| 声明合并 | 支持 | 不支持 |
| 联合类型 | 不支持 | 支持 |
定义对象结构优先用 interface,需要联合/交叉类型用 type。