网站建设开发计划模板建设电影播放网站
区别1
- 使用 interface 和 type 都是表示给定数据结构的常用方法。
 - 定义的方式略有不同。
 - type 定义的时候有 “=” 符号
 
interface User {name: string,age: number
}
type User = {name: string,age: number
}
 
区别2
- interface 可以多次声明同一接口。它们将合并在一起形成一个接口定义。
 - type 只能声明一次。
 
interface:可以多次声明,并最终可共同复用;
interface User{name: string
}
interface User{age: number
}
let Person: User = {name: 'myName',age: 100
}
 
type:再次声明会报错
type User = {name: string
}
type User = {  // 报错,Throw error: Duplicate identifierage: number
}
 
注意:
- 如果希望定义一个变量类型,就用 type,如果希望能够继承并约束,就用 interface。
 - 如果您是库的作者或为外部库创建类型定义,请使用 interface。方便其他人也可以扩展它们。
 - 如果你不知道该用哪个,建议使用 type。
 
