当前位置: 首页 > news >正文

响应式网站方案济南网站建设免费

响应式网站方案,济南网站建设免费,wordpress 网站费用,祥云户网站一、泛型的定义 在软件开发中#xff0c;我们不仅要创建一致的定义良好的API#xff0c;同时也要考虑可重用性。 组件不仅能支持当前数据类型#xff0c;同时也能支持未来的数据类型#xff0c;这在创建大型系统时提供了十分灵活的功能。 在像 C# 和 Java 这样的语言中我们不仅要创建一致的定义良好的API同时也要考虑可重用性。 组件不仅能支持当前数据类型同时也能支持未来的数据类型这在创建大型系统时提供了十分灵活的功能。 在像 C# 和 Java 这样的语言中可以使用泛型来创建可重用的组件一个组件可以支持多种类型的数据这样用户就可以以自己的数据类型来使用组件。 通俗理解泛型就是解决类、接口、方法的复用性以及对不特定数据类型的支持类型校验。 二、泛型的函数 // 只能返回 string类型的数据 function getData(value: string): string {return value }// 同时返回 string类型 和 number类型但是代码冗余 function getData1(value: string): string {return value }function getData2(value: number): number {return value }// 可以同时返回 string类型 和 number类型但是放弃了类型检查 function getData3(value: any): any {return value }由上可看出any类型 传入的参数类型和返回的参数类型可以不一致。 想要实现传入什么返回什么。比如传入 number类型 必须返回 number类型传入 string类型 必须返回 string类型就需要用的泛型。 泛型可以支持不特定的数据类型要求传人的参数和返回的参数一致。 // 泛型定义T表示泛型具体什么类型是调用这个方法的时候决定的 function getDataT(value: T): T {return value }// getDatanumber(string) // 错误的写法 getDatanumber(123) // 传入的参数必须为number类型 getDatastring(str) // 传入的参数必须为string类型// 泛型定义(了解): 指定调用时的参数类型返回参数为任意类型 function getData1T(value: T): any {return 123456 }getData1number(123)三、泛型类 最小堆算法需要同时支持返回数字和字符串a - z两种类型通过类的泛型来实现。 只支持 number类型 class MinClass {public list: number[] [] // 定义类中公共属性listadd (num: number): void { // 向list中追加数据this.list.push(num)}min(): number { // 求list数组中最小的数let minNum: number this.list[0]for (let i: number 0; i this.list.length; i) {if (minNum this.list[i]) {minNum this.list[i]}}return minNum} }let m new MinClass() m.add(3) m.add(4) m.add(10) m.add(8) console.log(m.min()) // 3使用类的泛型实现 class MinClassT {public list: T[] []add(value: T): void {this.list.push(value)}min(): T { // 求list数组中最小的数let minNum: T this.list[0]for (let i: number 0; i this.list.length; i) {if (minNum this.list[i]) {minNum this.list[i]}}return minNum} }/* 实例化类并且指定了类的T代表的类型是number */ let m1 new MinClassnumber() m1.add(5) m1.add(4) m1.add(10) console.log(m1.min()) // 4/* 实例化类并且指定了类的T代表的类型是string */ let m2 new MinClassstring() m2.add(z) m2.add(c) m2.add(e) console.log(m2.min()) // c四、泛型接口 // 定义函数类型接口 interface ConfigFn {(value1: string, value2: string): string }// 函数类型接口使用 const setData: ConfigFn (value1: string, value2: string): string {return value1 value2 }console.log(setData(name, 张三)) // name张三泛型接口接口类型在调用方法时动态传入 interface ConfigFn {T(value: T): T }const getData: ConfigFn T(value: T): T {return value }getDatastring(指定为string类型传入类型必须为string类型) getDatastring(123) // 错误写法interface ConfigFnT {(value: T): T }function getDataT (value: T): T {return value }const myGetDate: ConfigFnstring getDatamyGetDate(20)
http://www.w-s-a.com/news/261833/

相关文章:

  • 企业网站网址长期做网站应该购买稳定的空间
  • 网站静态化设计html5手机网站制作
  • 深圳最简单的网站建设家居网站建设全网营销
  • 如何取消网站备案佛山网站优化公司
  • 网站开发 成都广水网站设计
  • 音乐网站建设目标合同管理系统
  • jq网站特效插件如何知道网站是否被k
  • 自己的网站怎么接广告网站搭建收费
  • 宁波大型网站制作建立一个网站 优帮云
  • 大连零基础网站建设教学电话有哪些比较好的做ppt好的网站
  • 哪个网站做logo设计我的建筑网
  • php电子商务网站开发沂源手机网站建设公司
  • html和php做网站哪个好3gcms企业手机网站整站源码asp
  • 网站建设网页设计案例云南建设厅网站删除
  • 杏坛网站制作太原做网站要多少钱呢
  • 做新闻类网站还有市场吗东莞黄页网广告
  • 地方网站做外卖专业做互联网招聘的网站有哪些
  • 网站推广公司兴田德润紧急网页升级紧急通知
  • 厦门做网站哪家强企业网站网页设计的步骤
  • 普拓网站建设济南行业网站建设
  • 燕郊 网站开发网站里的地图定位怎么做
  • 门户网站建设招标互联网创业项目概述
  • 用什么做网站比较好市场调研公司是做什么的
  • 电商网站充值消费系统绍兴网站优化
  • 深圳网站建设公司联虚拟币交易网站开发
  • 专业网站设计建设公司抖音代运营公司排名前十强
  • 做网站架构肃北蒙古族自治县建设局网站
  • 推广网站怎么建经济研究院网站建设方案
  • 网站建设商家淘宝客自建网站做还是用微信qq做
  • django做网站效率高吗涉县移动网站建设报价