一、可索引接口
- 数组、对象的约束(不常用)
```typescript
// 1.ts定义数组的方式
var arr: number[] = [2342, 235325]
var arr1: Array
= [‘111’, ‘222’]
// 2.可索引接口,对数组的约束 interface UserArr {
[index: number]: string
} var arr: UserArr = [‘aaa’, ‘bbb’]; console.log(arr[0]);
// 3.可索引接口,对对象的约束 interface UserObj {
[index: string]: string
} var arr: UserObj = { name: ‘张三’ };
<a name="3a9eb9ba"></a>### 二、类类型接口- 对类的约束和抽象类抽象有点相似(常用)```typescript// 1.把属性和方法都进行了约束interface Animal {name: string;eat(str: string): void;}// implements 参数实现class Dog implements Animal {name: string;constructor(name: string) {this.name = name;}eat() {console.log(this.name + '吃粮食')}}var d = new Dog('小黑');d.eat();// 跟抽象类相似,父级定义标准,子级按照标准进行class Cat implements Animal {name: string;constructor(name: string) {this.name = name;}eat(food: string) {console.log(this.name + '吃' + food);}}var c = new Cat('小花');c.eat('老鼠');
