接口在TypeScript中是一个很重要的概念,使用得非常多,基本且重要。本文就让我们详细的来扒一扒这个接口。
什么是接口
当工厂制作一个商品时,肯定会先定好商品的制作规范,大小,形状,颜色等等。
在TypeScript
中也有这种规范。简单理解,接口就是用来描述对象或者类的具体结构,约束他们的行为。这也是TypeScript
的核心原则之一:对结构进行类型检查。在实际代码设计中也很有好处,增强了系统的可拓展性和可维护性。大家可以在工作或者学习中慢慢体会。
如何定义
和其他语言类似, TypeScript
中接口也是使用interface
关键字来定义的:
普通定义一个接口
Person
,申明一个对象类型为person
。遵照约定,那么person
就必须有name
和age
属性。
// 接口描述一个对象
interface Person {
name: string;
age: number;
}
// person必须有name和age属性,不然会报错
const person: Person = {
name: 'Tom',
age: 21 //必须为number类型,不然会报错
}
接口中定义函数,表示约定函数的参数必须为
Person
实例,返回值为string
。
// 接口中定义函数
interface PersonFun {
(person: Person): string;
}
let showPerson: PersonFun
// 具体实现
showPerson = function(person: Person) {
return `hello! ${
person.name}.`;