TypeScript接口,属性类接口、函数类型接口、可索引接口、类类型接口、扩展接口

TypeScript进阶知识之接口(接口定义、接口属性、可索引类型、接口表示函数类型、额外的属性检查、接口继承、接口与类型别名的区别) TypeScript 中,接口(Interface)是一种用来定义对象的结构和行为的类型。通过接口,我们可以定义对象应该有哪些属性、属性的类型以及方法。使用关键字 interface 来定义接口。声明接口后,直接使用接口名称作为变量的类型。方法的定义和函数的定义类似,包括参数和返回值类型。当我们使用对象字面量赋值给接口类型时,TypeScript 会自动进行额外的属性检查。这意味着赋值的对象不能包含接口中未定义的额外属性,否则会导致编译错误。//Error。 阅读详情
接口: 行为和动作的规范,对批量方法进行约束(interface)
属性接口
interface FullName{
    firstName:string;   //注意;结束
    secondName:string;
}
function printName(name:FullName){
    // 必须传入对象  firstName  secondName
    console.log(name.firstName+'--'+name.secondName);
}
// printName('1213');  //错误

var obj={   /*传入的参数必须包含 firstName  secondName*/
    firstName:'张',
    secondName:'三'
};
printName(obj)
可选接口
interface FullName{
    firstName:string;
    secondName?:string; // 属性可选(可传可不传)
}
function getName(name:FullName){
    console.log(name)
}  
getName({               
    firstName:'firstName'
})

函数类型接口:对方法传入的参数 以及返回值进行约束
// 加密的函数类型接口
interface encrypt{
    (key:string,value:string):string;
}
var md5:encrypt=function(key:string,value:string):string{
    //模拟操作
    return key+value;
}
console.log(md5('name','zhangsan'));

可索引接口: 数组、对象的约束(不常用)
  1. 可索引接口对数组约束
interface UserArr{
    [index:number]:string // 数组索引为number类型,值为string类型
}
var arr:UserArr=['aaa','bbb'];
// var arr:UserArr=[123,'bbb'];  /*错误*/
  1. 可索引接口对对象约束
interface UserObj{
    [index:string]:string // 对象key为string类型,value为string类型
}
var arr:UserObj={name:'张三'};

类类型接口:对类的约束和抽象类抽象有点相似
interface Animal{
    name:string;
    eat(str:string):void;
}
class Dog implements Animal{
    name:string;
    constructor(name:string){
        this.name=name;
    }
    eat(){ // 参数可选,但必须实现eat方法
        console.log(this.name+'吃粮食')
    }
}
var d=new Dog('小黑');
d.eat();
接口扩展:接口可以继承接口
 interface Animal{
        eat():void;
    }
    interface Person extends Animal{
        work():void;
    }
    class Web implements Person{
        public name:string;
        constructor(name:string){
            this.name=name;
        }
        // 实例必须实现父类指定方法
        eat(){
            console.log(this.name+'喜欢吃馒头')
        }
        work(){
            console.log(this.name+'写代码');
        }
        
    }
    var w=new Web('小李');
    w.eat();
HPE磁盘阵列管理04——MSA事件 本文介绍了HPE MSA存储系统的事件处理机制,重点分析了常见磁盘故障事件及其解决方案。文章首先定义了MSA事件的五个严重级别(严重、错误、警告、信息和解决),然后详细列举了多个典型事件案例(如事件1、3、6、8、172等),包括每种事件的触发条件、对系统的影响以及具体修复步骤。针对磁盘故障场景,文章提供了更换磁盘、重建磁盘组、取消隔离等操作建议,并强调应及时配置备用磁盘以降低数据风险。最后指出更详细的事件说明可参考《MSA事件描述参考指南》,并提供了HPE官方手册下载链接。全文为技术人员处理MSA存储故障 阅读详情

相关推荐

UNSW-NB15数据集:网络流量分析与恶意攻击检测实战指南

本文提供了UNSW-NB15数据集在网络流量分析与恶意攻击检测领域的实战指南。详细介绍了该数据集的构成、核心特征解析、特征工程处理、机器学习模型训练与评估方法,并探讨了模型部署及持续优化的挑战与思路,帮助读者构建高效的网络攻击检测系统。

weixin_29193359的博客 258

TS的接口

一、属性的接口 属性接口,专门用来约束对象中的每一个属性。 基础语法: interface 接口名 { 属性名: 类型; 属性名: 类型; // ... } 案例: interface Info { id: number; name: string; age?: number; sayHello?: () => void } const user: Info = { id: 1, name: 'Lee', age: 2

0.0 的博客 4771

AI辅助游戏开发实战:Kimi K3提升Unity开发效率与代码质量

在游戏开发领域,有限状态机(FSM)是构建角色AI行为逻辑的核心设计模式,它通过定义明确的状态和转换条件,使游戏实体能够智能地响应环境变化。其原理在于将复杂的行为分解为离散的状态节点,并通过事件驱动状态切换,从而实现清晰、可维护的AI架构。这项技术的价值在于显著提升了游戏角色的行为真实感和开发效率,被广泛应用于NPC行为控制、角色动画管理、UI流程等场景。随着AI编程助手的兴起,开发者现在可以借助如Kimi K3这类工具,通过自然语言指令快速生成和优化FSM等复杂系统的代码框架,将更多精力投入到核心玩法与性

weixin_30430677的博客 407

认识ts中的接口

ts中使用 interface 关键字定义一个接口, 接口用来定义对象类型或者函数类型,类类型等等, 并且可以设置属性只读, 属性可选等操作, 总而言之 interface 的功能很强大 . 接下来玩一玩 . 要点概览 : point explain 普通接口 属性可选可改 只读属性 对象中属性只读不能修改 可选属性 属性不是必须的 函数类型 接口还能定义函数类型 索引类型 类类型 继承接口 混合类型 接

yjwlike的博客 6495

深入解析rknn-toolkit2混合量化:如何为RK3588和RK356X选择最佳量化策略

本文深入解析了RKNN-Toolkit2混合量化技术,针对瑞芯微RK3588和RK356X芯片的硬件特性差异,提供了最佳量化策略选择指南。通过混合量化技术,开发者可以在保持较高推理效率的同时显著降低精度损失,特别适用于边缘计算场景。文章详细介绍了混合量化的技术原理、实战流程及芯片专属优化策略,帮助开发者充分利用硬件特性提升模型性能。

dog123的博客 258

银河飞腾FT-M6678 DSP开发初体验:从仿真器连接到第一个网络程序(CCS5.5+FT-EMU560实战)

本文详细介绍了银河飞腾FT-M6678 DSP开发环境的搭建过程,包括CCS5.5开发环境的配置、FT-EMU560仿真器的连接与设置,以及关键模块如网络驱动的国产化替换。通过实战案例,帮助开发者快速掌握国产DSP的开发流程,实现网络通信功能。

weixin_30919429的博客 554

TS03 TS中的各类型接口(详解)

1.TS中的接口 接口的作用:在面向对象的编程中,接口是种规范的定义, 它定义了行为和动作的规范, 在程序设计里面,接口起 到一种限制和规范的作用。接 口定义了某-批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方 法,提供这些方法的类就可以满足实际需要。typescrip中 的接口类似于java,同时还增加了更灵活的接口类型,包括属性、函数、可索引和类 等。 1.1 属性类接口 1.1.1 一个入门小实例 //TS定义一个函数 fun

qq_43955202的博客 5830

二、Creo模型的功能函数 例如:模型(元件)的干涉........

【代码】模型(元件)的干涉。

行为艺术家Zzz的博客 613

TypeScript---Ts接口和类总结

一、接口 1、【接口】是对象的状态(属性)和行为(方法)的抽象(描述)。接口是一种类型,是一种规划、约束 2、【属性】readonly:只读属性、?:可选属性 interface IPerson { readonly id: number //只读属性 name: string age: number sex?: string //可选属性 } const person1: IPerson = { id:1, name: 'tom', age: 20, // s

maidu_xbd的博客 4159

R语言实战应用精讲50篇(二)-多重线性回归系列之稳健回归

前言 线性回归的参数估计主要采用的是最小二乘法(又称最小平方法),该法是将使观测值与模型预测值之差的平方达到最小的值作为参数估计值。如果数据存在异常点或者异方差,最小二乘法估计会存在偏差,常用的处理策略就是改用稳健回归(Robust Regression)。 稳健回归就是采用更为稳健的参数估计方法来拟合模型,所谓稳健就是数据的波动对参数估计影响不大,比如不受异常值影响,或删除某一观测后对结果影响不大。稳健估计的方法有很多,主要有这么几类:最小绝对值回归(也称最小一乘法回归,lAV),最小中位数二乘法(L

wenyusuran的专栏 3160

自监督学习原理与代码实战案例讲解

自监督学习原理与代码实战案例讲解 作者:禅与计算机程序设计艺术 1. 背景介绍 1.1 自监督学习的起源与发展 1.1.1 监督学习的局限性

AI天才研究院 622

TS接口类型

TypeScript 中的接口是一种抽象结构,用于定义对象的类型。接口定义了对象应该包含的属性和方法,但不提供实现。

weixin_42560424的博客 3083

华南理工大学-大学物理实验-绪论作业

3.用公式测量某圆柱体铝的密度,测得直径=2.0420.003(cm),高=4.1260.004(cm),质量=36.4880.006(g)。计算铝的密度和测量的标准差,并以测量结果表达式表示之。(要求判别和剔除异常数据)(30分)(了解图解法的注意事项,大学物理实验众多实验数据处理采用这种方法,如PN结温度特性研究,光电效应与普朗克常数的测定,霍尔效应测磁场等等,注意规范作图)实验测得温度与对应的金属丝的长度的数据如下表所示。(了解异常数据的判断方法及具体判断过程,30分的题目n(*≧▽≦*)n)

mohen_777的博客 580

typescript接口

typescript接口 typescript接口的作用:在面向对象的编程中,接口是一种规范的定义,他定义了行为和动作的规范,在程序设计里面,接口起到批量约束和定义标准的作用 typescript接口(5种) 属性类接口 函数类型接口 可索引接口 类类型接口 接口扩展 属性类接口 对json的约束 接口:行为和动作的规范,对批量方法进行约束 用interface 关键词来定义接口//对批量方法传入参数进行约束 //接口:行为和动作的规范,对批量方法进行约束 //用interface 关键

weixin_45752063的博客 816

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

【愚公系列】2021年12月 Typescript-接口的使用

非接口约束 function printA(labelObj:{label:string}){ console.log(labelObj); } printA({ label:'你好' }) //跳过额外字段的检测 // 第一种断言 : printA({ label:'你好', name:'laney' } as {label:string}) //第二种方式:添加字符串的索引签名 function printB(labelObj:{label:string,[pr

愚公智库 53万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

TypeScript => 接口 interface

TypeScript笔记 6. TypeScript => 接口 interface // ts => 接口 interface 类类型接口使用 implements // 1. 属性类接口 // 2. 函数类型接口 对方法传入的参数 以及 返回值 进行约束 /* interface encrypt { (key: string, value: string): str...

qin904495445的博客 255

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

5、typeScript中的接口

我们从五大类接口开始讲: 5.1属性类接口 5.2函数类型接口 5.3可索引接口 5.4类类型接口 5.5接口扩展 接口:行为和动作的规范,对批量方法进行约束 属性接口 //就是传入对象的约束 属性接口 interface FullName{ firstName:s...

weixin_38703858的博客 212

TypeScript 学习笔记04-接口定义、行为和动作约束,函数类型接口 、可索引接口、类类型接口、接口扩展和接口的继承

1、属性类接口 function pullData(name:string) { console.log(name) } pullData('this is ts') // this is ts 2、对json进行约束 关键词interface 接口定义 行为和动作规范,对批量方法进行约束 接口可选属性 通过?来判断 interface json { name:string; age:number } function pullData(object:json)

weixin_44922515的博客 226

6.接口

文章目录接口属性类接口案例:属性接口+原生js封装ajax函数类型接口可索引接口(不常用)1.对数组的约束2.对对象的约束类类型接口(常用)接口扩展 接口 作用: 定义了行为和动作的规范 属性类接口 **作用:**对json的约束,传入的参数中必须包含接口里的属性 interface Fullname{ firstName:string; secondName?:string //加个问号变成可选属性,可传可不传 } function printName(name:Fullname) {

zyf_baby的博客 148

Typescript中的类 和 Typescript中的接口

TypeScript TypeScript中的类 1)类的定义 2)类的继承 3)类里面的修饰符 4)静态属性 静态方法 5)抽象类 继承 多态 类的定义 1.ts中类的定义 es5: function Person(name){ this.name = name; this.run = function(){ console.log(this.name); } } var a = new Person('张三'

chen4565的博客 256

TypeScript 中「接口」的基本使用

TypeScript 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用。接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心这些类里方法的实现细节,它只规定这批类里必须提供某些方法,提供这些方法的类就可以满足实际需要。typescrip中的接口类似于java,同时还增加了更灵活的接口类型,包括屌性、函数、可索引和类。 ...

Yingjieweb 的技术博客 476

④TypeScript 接口(属性接口、函数类型接口、可索引接口、类类型接口、接口扩展)

TypeScript 写下博客主要用来分享知识内容,并便于自我复习和总结。 如有错误之处,请各位大佬指出。

一个努力学习的程序猿 490

【TypeScript】接口

ts 接口

zhenshu_guo的博客 1893

TypeScript接口

当操作类和接口的时候,要知道类是具有两个类型的:静态部分的类型和实例的类型。可以同时使用两种类型的索引,但是数字索引的返回值必须是字符串索引返回值类型的子类型。下例展示了如何创建一个函数类型的变量,并将一个同类型的函数赋值给这个变量。可选属性的好处之一是可以对可能存在的属性进行预定义,好处之二是可以捕获引用了不存在的属性时的错误。应该直接操作类的静态部分。可索引类型具有一个索引签名,它描述了对象索引的类型,还有相应的索引返回值类型。类型检查器不会去检查属性的顺序,只要相应的属性存在并且类型也是对的就可以。

weixin_52280860的博客 1374

typeScript面试必备之-通识七:typeScript中的可索引接口(数组,对象)+类类型接口...

可索引接口:数组、对象的约束 (不常用) ts定义数组的方式 var arr:number[]=[2342,235325] var arr1:Array<string>=['111','222'] 复制代码1.1可索引接口 对数组的约束 interface UserArr{ [index:number]:string//表...

weixin_33795806的博客 866

TypeScript接口、type关键字详解(可读、只读属性、继承接口|类、规范类、函数|可索引|类|混合类型接口、ReadonlyArray、接口&type、映射类型)

目录 TypeScript接口 可选属性 只读属性 ReadonlyArray 接口继承接口(extends) 接口继承类(extends) 接口规范类(implements) 函数类型接口 可索引类型接口 只读设置 类类型接口 规定构造函数 混合类型接口 TypeScript接口 用于规范定义变量的类型,规定变量应该具有什么属性或函数入参什么值返回什么值等。 interface IUser { name: string age: number } l.

AIWWY的博客 6462
上一篇: TypeScript静态属性、静态方法,抽象类,多态
下一篇: react与其他框架区别
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值