接口

103 阅读1分钟

什么是接口

当工厂制作一个商品时,肯定会先定好商品的制作规范,大小,形状,颜色等等。

在TypeScript中也有这种规范。简单理解,接口就是用来描述对象或者类的具体结构,约束他们的行为。这也是TypeScript的核心原则之一:对结构进行类型检查。在实际代码设计中也很有好处,增强了系统的可拓展性和可维护性。大家可以在工作或者学习中慢慢体会。

怎么定义接口

用interfance关键字定义,普通定义一个接口Person,申明一个对象类型为person。遵照约定,那么person就必须有nameage属性。

// 接口描述一个对象
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的所有属性