我的编程空间,编程开发者的网络收藏夹
学习永远不晚

TypeScript接口怎么使用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

TypeScript接口怎么使用

这篇文章主要讲解了“TypeScript接口怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“TypeScript接口怎么使用”吧!

    前言:

    TS的核心原则之一就是对所具有的结构 进行类型检查。接口的作用就是为这些类型命名和为你的代码或第三方代码定义契约。

    最终被编译成JavaScript代码后不包含接口以及类型约束的代码。

    1.接口的定义

    接口的作用于type关键字类似,但是又不一样。type可以定义简单的数据类型,例如如下代码

    type str = string

    这种写法就不能应用在 接口 中,接口中只能写函数类型和类类型还有数组类型。

    在TS中定义接口使用interface关键字。

    示例代码如下所示:

    // 定义一个简单的接口interface Person {  name: string}// 定义 get 方法function getPersonName(person: Person): void {  console.log(person.name)}// 定义 set 方法function setPersonName(person: Person, name: string): void {  person.name = name}// 定义一个 person 对象let person = {  name: '一碗粥',}setPersonName(person, '一碗周')// 修改成功getPersonName(person) // 一碗周

    Person 接口就像是一个名字,它用来描述使用该接口中的要求,例如此接口中需要一个name属性,且类型为string类型。

    值得注意的是,类型检查并不会检查属性的顺序,只需要对应你的属性存在,且类型相同即可。

    2.属性

    2.1可选属性

    如果接口中的某个属性是可选的,或者说仅仅在某个条件下存在,可以在属性名旁边加一个?号。示例代码如下:

    ;(function () {  // 定义一个简单的接口  interface Person {    name: string    // 说明 age 是可选的    age?: number  }  // 定义一个 person 对象  let person = {    name: '一碗周',    age: 18,    hobby: 'coding',  }  // 定义 get 方法  function getPersonName(person: Person): void {    // console.log(person.age, person.hobby) //  Property 'hobby' does not exist on type 'Person'.  }})()

    此时的sex属性我们可写可不写,但是hobb 属性,由于没有在接口中定义,我们调用会抛出异常。

    2.2只读属性

    如果想让一个属性为一个只读属性,仅仅需要在属性前面添加readonly即可。

    示例代码如下:

    ;(function () {  interface Person {    // 将 name 设置为只读    readonly name: string  }  // 定义一个 person 对象  let person = {    name: '一碗周',  }  // 定义 set 方法  function setPersonName(person: Person, name: string): void {    person.name = name // Cannot assign to 'name' because it is a read-only property.  }  setPersonName(person, '一碗粥')})()

    3.类类型

    3.1继承接口

    和类一样,接口也可以相互继承。 这让我们能够从一个接口里复制成员到另一个接口里,可以更灵活地将接口分割到可重用的模块里。

    接口继承使用extends关键字,示例代码如下:

    // 定义两个接口interface PersonName {  name: string}interface PersonAge {  age: number}// 定义一个 Person 接口继承于以上两个接口 多个接口使用 , 逗号分割interface Person extends PersonName, PersonAge {  hobby: string  // 定义一个方法,返回值为 string  say(): string}let person = {  name: '一碗周',  age: 18,  hobby: 'coding',  // 示例方法  say() {    return '一碗周'  },}// 定义 get 方法function getPersonName(person: Person): void {  console.log(person.name, person.age, person.hobby)}getPersonName(person) // 一碗周 18 coding

    继承多个接口中间使用,逗号分割。

    4.函数类型

    在TS中接口还可以对函数类型的接口进行描述。

    函数类型接口的定义就像是一个只有参数列表和返回值类型的函数定义,参数列表中每个参数都需要名字和类型 。

    示例代码如下所示:

    interface MyAdd {    (x: number, y: number): number}

    定义完成之后我们可以像使用普通接口一样使用这个函数接口。

    示例代码如下所示:

    let myAdd: MyAdd = (x: number, y: number): number => {    return x + y}

    上面的代码等同于如下函数定义的代码:

    let myAdd: (x: number, y: number) => number = (    x: number,    y: number): number => {    return x + y}

    感谢各位的阅读,以上就是“TypeScript接口怎么使用”的内容了,经过本文的学习后,相信大家对TypeScript接口怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    TypeScript接口怎么使用

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    TypeScript接口怎么使用

    这篇文章主要讲解了“TypeScript接口怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“TypeScript接口怎么使用”吧!前言:TS的核心原则之一就是对所具有的结构 进行类型检
    2023-06-22

    typeScript的interface接口怎么定义使用

    这篇“typeScript的interface接口怎么定义使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“typeScri
    2023-06-29

    TypeScript接口使用介绍

    接口是一系列抽象方法的声明,是一些方法特征的集合,这些方法都应该是抽象的,需要由具体的类去实现,然后第三方就可以通过这组抽象方法调用,让具体的类执行具体的方法
    2022-11-13

    TypeScript怎么定义接口

    这篇文章主要讲解了“TypeScript怎么定义接口”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“TypeScript怎么定义接口”吧!接口的作用:接口,英文:interface,其作用可以
    2023-06-20

    怎么在TypeScript中实现接口的类

    这篇文章主要介绍“怎么在TypeScript中实现接口的类”,在日常操作中,相信很多人在怎么在TypeScript中实现接口的类问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么在TypeScript中实现接
    2023-07-05

    Typescript怎么使用装饰器实现接口字段映射与Mock

    本篇内容主要讲解“Typescript怎么使用装饰器实现接口字段映射与Mock”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Typescript怎么使用装饰器实现接口字段映射与Mock”吧!需求
    2023-07-06

    TypeScript 5.0怎么使用

    这篇文章主要介绍了TypeScript 5.0怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇TypeScript 5.0怎么使用文章都会有所收获,下面我们一起来看看吧。2023 年 3 月 17 日,T
    2023-07-05

    Go接口怎么使用

    本篇内容主要讲解“Go接口怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Go接口怎么使用”吧!接口用法简介接口(interface)是一种类型,用来定义行为(方法)。type Namer
    2023-06-30

    java.sql.ResultSetMetaData接口怎么使用

    java.sql.ResultSetMetaData接口是用于描述ResultSet中的元数据的接口。它提供了一些方法来获取和操作ResultSet的元数据信息。使用步骤如下:1. 首先,需要获取ResultSet对象。可以通过执行SQL查
    2023-10-23

    java.sql.ResultSetMetaData接口怎么使用

    Java.sql.ResultSetMetaData接口ResultSetMetaData接口提供有关ResultSet对象中列的元数据信息,包括列名、数据类型、大小和可空性。使用此接口,开发人员可以在JDBC中获取数据库元数据,从而了解从数据库检索的数据详细信息,有利于动态查询、错误处理和性能优化。
    java.sql.ResultSetMetaData接口怎么使用
    2024-04-11

    怎么使用API接口

    这篇文章主要介绍“怎么使用API接口”,在日常操作中,相信很多人在怎么使用API接口问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用API接口”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!接口交互前
    2023-06-16

    TypeScript中变量和接口的作用是什么

    本文小编为大家详细介绍“TypeScript中变量和接口的作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“TypeScript中变量和接口的作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。TS变
    2023-06-05

    typeScript泛型使用和泛型接口结合的方法

    这篇“typeScript泛型使用和泛型接口结合的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“typeScript泛型
    2023-06-29

    Vue3中怎么使用TypeScript

    如何声明字段名为枚举的类型?根据设计,type字段应该是一个枚举值,不应该由调用方随意设置。下面是Type的枚举声明,共有6个字段。enumType{primary="primary",success="success",warning="warning",warn="warn",//warningaliasdanger="danger",info="info",}TypeSc
    2023-05-14

    C++中怎么使用接口

    C++中怎么使用接口,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。首先我们需要一些宏:// // Interfaces.h // #define Interface
    2023-06-17

    Java Cloneable接口怎么使用

    要使用Java中的Cloneable接口,您需要遵循以下步骤:1. 在您的类定义中实现Cloneable接口,例如:```javapublic class MyClass implements Cloneable {// 类定义}```2.
    2023-08-18

    Vue3中TypeScript怎么使用

    如何声明字段名为枚举的类型?根据设计,type字段应该是一个枚举值,不应该由调用方随意设置。下面是Type的枚举声明,共有6个字段。enumType{primary="primary",success="success",warning="warning",warn="warn",//warningaliasdanger="danger",info="info",}TypeSc
    2023-05-18

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录