易百教程

38、interface语句和type语句有什么区别?

interface语句和type语句的主要区别:

interface X {  
    a: number  
    b: string  
}  
type X = {  
    a: number  
    b: string  
};
编号 interface语句 type语句
1 接口声明总是引入命名对象类型。 类型别名声明可以为任何类型的类型引入名称,包括原始类型、联合类型和交集类型。
2 接口可以在extendsimplements 子句中命名。 对象类型文字的类型别名不能在 extendsimplements 子句中命名。
3 接口创建了一个随处使用的新名称。 类型别名不会创建新名称。
4 一个接口可以有多个合并的声明。 对象类型文字的类型别名不能有多个合并声明。