/*
接口 C#写多了,接口也自然也是理解的。不过TypeScript中的接口与
C#中的还是有些区别的
接口的作用就是为这些类型命名和为你的代码或第三方代码定义契约
*///为方法的参数做契约
interface IPersion {Name: string;Age: number;
}
function fun6(person: IPersion): void { };
//参数必须满足接口 IPerson 多一个少一个都不行,属性名写错也不
//行 Name 不可以写成  SName
fun6({ Name: "jack", Age: 26, Other: 5 });//可空属性 ? 比如Name?
//只读属性 readonly 比如  readonly Name; Nmae只会在初始化的时
//候赋值 Arrary类型有个 ReadonlyArray//用接口来描述函数
interface SearchFun {(source: string, subString: string): boolean;
}
let mySearch: SearchFun;
//签名个数类型必须一致,但名称可以不一致
mySearch = function (mysource: string, mysubString: string) {let result = mysource.search(mysubString);return result != -1;
}//索引  除了数字还可以使用字符串做签名,如果同时使用数字和字符
//串做索引,那么数字返回的类型必须是字符串的子类型或者是同类
//型。也就两者的类型需要一致
interface StringArrary {[index: number]: string;
}
//其实这是多余的
let myArray: StringArrary;
myArray = ["jack", "yuhan"];
myArray[0];//实现接口,与C#一致了,面向接口的开发的好处相信大家都是知道的
//TypeScript中使用 implements 关键字
class Person implements IPersion {Name;Age;
}//扩展接口
interface Shape {Color: string;
}interface Square extends Shape {SideLength: number;
}let square = <Square>{};
square.SideLength = 10;
square.Color = "red";//接口继承类  真是乱-.-

转载于:https://www.cnblogs.com/LiangSW/p/6252832.html

TypeScript 素描 - 接口相关推荐

  1. Typescript前端接口联调自动化的探究与实践

    源宝导读:Web应用程序一般都是前后端分离的基本架构,而前后端很可能分别是两拨人分别开发,前后端的接口连调成为高频沟通的对象,开发内耗最大的也在这个环节.本文将分享如何基于OpenAPI将前后端接口协 ...

  2. Typescript.中文.接口声明.lib.es5.d.ts

    Typescript.中文.接口声明.lib.es5.d.ts jcLee95 的个人博客 邮箱 :291148484@163.com CSDN 主页:https://blog.csdn.net/qq ...

  3. 初学TypeScript之接口定义

    TypeScript入门(2) 前面讲了如何使用TypeScript和TypeScript的数据类型有哪些,这一章就讲解TypeScript的接口. 如果不知道如何写TypeScript的朋友或者不知 ...

  4. typescript利用接口类型声明变量_TypeScript入门指南(基础篇)

       戳蓝字「前端技术优选」关注我们哦! 作者:慕晨同学 原文地址:https://github.com/USTB-musion/fee-skills/issues/19 写在前面 ts是拥有类型系统 ...

  5. TypeScript 素描 - 模块解析、声明合并

    模块解析 模块解析有两种方式 相对方式  也就是以/或 ./或-/开头的,比如import jq  from "/jq" 非相对方式  比如 import model  from ...

  6. TypeScript入门-接口

    接口 接口在面向对象设计中具有极其重要的作用,TypeScript 接口的使用方式类似于 Java,同时还增加了更灵活的接口类型,包括属性.函数.可索引和类等类型. 属性类型接口 在 TypeScri ...

  7. typescript中接口和类的区别

    ts中的接口 一般用来定义数据结构,因为ts中的interface不同于其它强类型语言的一点是,interface中可以定义变量,这就使得interface还可以充当一些model对象的基类使用,而并 ...

  8. TypeScript中接口和抽象类

    接口和抽象类的出现主要是为了添加参数的限制,来规范代码 接口 TypeScript的核心原则之一是对值所具有的结构进行类型检查. 它有时被称做"鸭式辨型法"或"结构性子类 ...

  9. TypeScript 素描 - 函数

    /* 函数和javaScript并没有太大差别,只是增加了额外的功能,使函数有 更为强大的功能而且更易用使用 *///现在支持函数的参数指定类型,在前面的博文中大家应该已经看到 //还可以指定函数的返 ...

最新文章

  1. iOS开发:使用Block在两个界面之间传值(Block高级用法:Block传值)
  2. 'ScriptModel' object has no attribute 'save'
  3. BugBash活动分享
  4. 在其他数都出现k次的数组中找到只出现一次的数
  5. 免费直播 | 特邀大厂产品战略咨询顾问,详解数据驱动产品商业化
  6. HTML5与CSS3权威指南.pdf5
  7. 操作系统:再见CentOS,将于本月底终止维护!
  8. 查看PLC IP 端口_西门子828D数控系统X130接口通讯怪异现象(X130手动设置的 IP)...
  9. 文本分类有哪些论文中很少提及却对性能有重要影响的tricks?
  10. [android] AndroidManifest.xml - 【 manifest - permission】
  11. C#开发笔记之11-如何用C#过滤连续相同的字符串?
  12. 一种被国人漠视的精神---狼的精神
  13. yandex 浏览器 linux,业界动态
  14. 计算机底纹不起作用,CSS - 背景颜色在IE11中不起作用(CSS - background-color not working in IE11)...
  15. 阿尔法狗 3 天走完人类千年棋史,被反超的我们该如何绝地求生?34 个开源项目告诉你!
  16. 新手快速入门自动化测试第一步
  17. Android开根号运算
  18. 普通电机、步进电机、伺服电机、舵机区别?
  19. linux修改shell前缀,Linux shell控制台改变显示前缀
  20. Android后台切回到应用显示广告页

热门文章

  1. android 日历图,Android中的自定义日历视图
  2. android9.0变化,十年巨变 Android 1.0对比Android 9
  3. psychopy 音频时长代码_多媒体之音频输入1
  4. 介绍全新的 JSX 转换
  5. http2.0和http1.1的区别
  6. 如何在Javascript中创建范围
  7. linux环境变量权限不够,linux环境变量及权限的理解
  8. mysql 索引 insert_mysql优化:定期删数据 + 批量insert + 字符串加索引为什么很傻
  9. java二分查找算法字符串数组_Java 算法——二分查找数组集合关键元素
  10. 高级工计算机操作试题及答案,计算机系统操作高级工试题和答案[1]