【TS】接口(Interface)学习

介绍

接口(Interface)是TypeScript中的一个重要概念,它允许你定义对象的结构,而不需要实现具体的逻辑。接口在编译时用于类型检查,确保对象具有特定的属性和方法。

接口的作用类似于抽象类,不同点在于接口中的所有方法和属性都是没有实值的,换句话说接口中的所有方法都是抽象方法。

基本用法

定义接口
javascript 复制代码
interface Person {
    name: string;
    age: number;
}
实现接口
javascript 复制代码
const person: Person = {
    name: "张三丰",
    age: 108
};
可选属性
javascript 复制代码
interface Person {

    name: string;

    // ?代表可选属性
    age?: number; 
}
只读属性
javascript 复制代码
interface Person {

    //readonly 只读属性
    readonly name: string;

    age: number;
}
扩展接口
java 复制代码
interface Person {
    name: string;
    age: number;
}

interface Man extends Person {
    sex: string;
}
索引签名
javascript 复制代码
interface StringArray {
    [index: number]: string;
}

let myArray: StringArray;
myArray = ["张翠山", "张无忌"];

实践

  • 使用接口来定义API的形状:这样可以确保API的一致性和可预测性。
  • 在团队开发中,接口可以作为契约:明确对象的结构,减少沟通成本。、
  • 接口可以提高代码的可读性和可维护性:通过接口,你可以清晰地看到对象的结构和预期的行为。



相关推荐
尤老师FPGA3 分钟前
QT代码自适应窗口
开发语言·qt
biter down5 分钟前
5:原生 assert 断言
开发语言
布朗克1686 分钟前
12 封装与构造方法
java·开发语言·封装·构造方法
吃好睡好便好16 分钟前
矩阵旋转的计算
学习·线性代数·算法·矩阵
z落落16 分钟前
C# 抽象类(abstract)
java·开发语言·c#
江华森21 分钟前
TCP/IP 网络协议学习笔记(含上机实操)
网络协议·学习·tcp/ip
折哥的程序人生 · 物流技术专研21 分钟前
AI 编程与行业赋能|专栏总目录(持续更新)
开发语言·人工智能·软件工程·ai编程
「維他檸檬茶」22 分钟前
记录python学习(未完待续)
学习·语言
SilentSamsara24 分钟前
爬虫工程化:Playwright + 反反爬 + 数据清洗管道实战
开发语言·爬虫·python·青少年编程·playwright
玹之又玹24 分钟前
AI 入门知识点学习扫盲
人工智能·学习·ai