TypeScript 中,接口(Interface)

在 TypeScript 中,接口(Interface)是一种定义对象结构的类型。接口定义了对象应该具备的形状,即对象应该具有哪些属性和方法。

代码示例:

复制代码
// 定义一个接口,表示一个人的信息  
interface Person {  
  name: string; // 姓名属性,类型为字符串  
  age: number; // 年龄属性,类型为数字  
  greet(): void; // greet 方法,没有返回值  
}  
  
// 创建一个实现 Person 接口的对象  
const john: Person = {  
  name: 'John Doe',  
  age: 30,  
  greet() {  
    console.log(`Hello, my name is ${this.name}`);  
  }  
};  
  
// 使用该对象  
john.greet(); // 输出:Hello, my name is John Doe

示例中定义了一个名为 Person 的接口(通常首字母要大写 )。接口中定义了:两个属性(nameage)和一个方法(greet)。

然后,创建了一个名为 john 的对象,该对象实现了 Person 接口。这意味着 john 对象必须具有 Person 接口中定义的所有属性和方法。

最后,调用了 john 对象的 greet 方法,该方法打印了一条问候信息。

需要注意的是,接口在 TypeScript 中主要用于定义对象的形状,而不是实现具体的功能。实现接口的对象需要自行提供接口中定义的所有属性和方法的实现。

相关推荐
belldeep5 分钟前
nodejs:Vite + Svelte + ts 入门示例
typescript·node.js·ts·vite·svelte
We་ct8 分钟前
LeetCode 4. 寻找两个正序数组的中位数:二分优化思路详解
前端·数据结构·算法·leetcode·typescript·二分
H@Z*rTE|i12 分钟前
vue首屏加载优化
前端·javascript·vue.js
FreeBuf_13 分钟前
新型开源供应链攻击:虚假 npm 安装日志暗藏 RAT 木马
前端·npm·开源
Irene199114 分钟前
v-model 的本质,defineModel() 是 Vue 3.4 的重大改进
前端·javascript·html5
西西学代码32 分钟前
Flutter---构造函数
开发语言·javascript·flutter
invicinble39 分钟前
关于对vue的认识
javascript·vue.js·ecmascript
EF@蛐蛐堂41 分钟前
【vue】Vite 生态 5 个 “新玩具“
前端·javascript·vue.js
风之舞_yjf1 小时前
Vue基础(29)_props配置项、ref属性
前端·vue.js
Fairy要carry1 小时前
项目03-手搓Agent之团队协作(发消息/分配任务)
linux·前端·python