什么是接口
当工厂制作一个商品时,肯定会先定好商品的制作规范,大小,形状,颜色等等。
在TypeScript中也有这种规范。简单理解,接口就是用来描述对象或者类的具体结构,约束他们的行为。这也是TypeScript的核心原则之一:对结构进行类型检查。在实际代码设计中也很有好处,增强了系统的可拓展性和可维护性。大家可以在工作或者学习中慢慢体会。
怎么定义接口
用interfance关键字定义,普通定义一个接口Person
,申明一个对象类型为person
。遵照约定,那么person
就必须有name
和age
属性。
// 接口描述一个对象
interface IPerson {
name: string;
age: number;
}
// person必须有name和age属性,不然会报错
const person: IPerson = {
name: 'Tom',
age: 21 //必须为number类型,不然会报错
}
接口里可以添加可选参数?
和只读属性readonly
接口和类型别名的区别 :
接口只能对对象,类型别名可以对任何类型别名
接口的继承
interface Ipoint1 = {
X:number;
y:number
}
interface Ipoint2 = {
X:number;
y:number;
z:number
}
上面接口都有公共的属性,可以利用继承Ipoint1
interface Ipoint2 extends Ipoint1 = {z:number}
Ipoint2继承Ipoint1的所有属性