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

宿迁市建设局网站首页wordpress主页内容修改

宿迁市建设局网站首页,wordpress主页内容修改,网络营销推广策略,个人网站怎样申请TS 能推导出函数体中的类型#xff0c;但多数情况下无法推导出参数的类型#xff0c;只有少数特殊情况下能根据上下文推导参数的类型。返回类型能推导出#xff0c;不过也可以显式注解。 1 声明和调用函数 一般来说#xff0c;在方法中的this值为调用该方法时位于点号左侧… TS 能推导出函数体中的类型但多数情况下无法推导出参数的类型只有少数特殊情况下能根据上下文推导参数的类型。返回类型能推导出不过也可以显式注解。 1 声明和调用函数 一般来说在方法中的this值为调用该方法时位于点号左侧的对象 let x {fun() {console.log(this);} } x.fun(); // { fun: [Function: fun] } let fun x.fun; fun(); // undefined 如果在函数中有使用到this则上面的方法定义是可能会带来风险的this不能保证为想要的类型。 我们可以在函数的第一个参数中声明this的类型来规避上面的风险。 let x {fun(this: Date) {console.log(this.getDate());} } let date new Date(); x.fun.bind(date)(); // 27 //x.fun(); // The this context of type { fun(this: Date): void; } is not assignable to methods this of type Date 1.1 函数类型重载 重载函数即有多个调用签名的函数。 type Reserve {(from: Date, to: Date, destination: String):String,(from: Date, destination: String):String } let reserve: Reserve (from: Date, to: Date | String,destination?: String) {return destination: destination; } reserve(new Date(), new Date(),hello); reserve(new Date(),ts); 注意我们在调用函数时参数类型不是参照这个函数定义时的类型而是这个函数的签名例如上面如果参照函数定义则函数调用可以为 图 函数调用失败 如上图所示上面的调用方式将会报错。 1.1.1 DOM 中的重载 浏览器DOM API有大量重载例如createElement方法。参数为表示HTML标签的字符串返回值为对应类型的HTML元素其函数定义为 type CreateElement {(tag: a): HTMLAnchorElement,(tag: canvas): HTMLCanvasElement,(tag: table): HTMLTableElement,(tag: string): HTMLElement } 2 多态 在类型层面施加约束的占位类型也称多态类型参数。 type Filter {T(array: T[], f: (item: T) boolean): T[] } let filter: Filter (array, f) {let arr []for (let item of array) {if (f(item)) arr.push(item);}return arr; } filter([2,5,7,6],(_) _ 5); // [7,6] T在调用签名中声明位于签名的开始圆括号前面TS将在调用该类型的函数时为T绑定具体类型。 而如果把T的作用域限定在类型别名中TS则要求在使用类型别名时显式绑定类型 type FilterT {(array: T[], f: (item: T) boolean): T[] } let filter: Filternumber (array, f) {let arr []for (let item of array) {if (f(item)) arr.push(item);}return arr; } filter([2,5,7,6],(_) _ 5); // [7,6] 2.1 受限的多态 TS 多态可以像Java一样使用extends来约束多态但不能使用super。 type TreeNode {value: string } type LeafNode TreeNode {isLeaf: true } type InnerNode TreeNode {children: [TreeNode] | [TreeNode,TreeNode] } function mapNodeT extends TreeNode(node: T,f: (value: string) string) : T {return {...node,value: f(node.value)} } 2.2 泛型默认类型 泛型参数可以指定默认类型。 type AString {value: a } type BNum {num: 1 } type MyStringT extends AString AString BNum {value: T } let myString: MyString {value: { value: a, num: 1} }
http://www.zqtcl.cn/news/75307/

相关文章:

  • 做调像什么网站找活昆明快速做网站
  • 怎么免费建立自己网站迅睿cms和帝国哪个好
  • 什么叫个人网站软件小程序在哪个网站做
  • 创建网站的注意事项深圳做营销型网站
  • 电信电信网站备案系统南京一等一网络科技有限公司
  • 中企潍坊分公司网站hexo发布wordpress
  • 怎么做网站的软文推广sku电商是什么意思
  • 网站建设丨下拉找金手指上词快用凡科做的网站要钱吗
  • index网站制作用网站做的简历
  • 模板手机网站建设搜索引擎优化培训
  • 合肥外贸网站建设百度关键词刷排名软件
  • 网站色差表吉林网络公司哪家好
  • 博客网站开发源代码中国建设人才服务信息网是什么网站
  • 网站平台搭建织梦企业门户网站
  • 莆田免费建站模板dz网站建设
  • vps可以做多少网站seo公司 杭州
  • 找人做网站网页浏览器cookie
  • 广西建设工程质量监督网站凡科网站建设步骤
  • 福建网站模板分红网站建设
  • 什么是网站标题做全网营销型网站建设
  • 查公司注册信息怎么查昆明网站seo报价
  • 四川建设网官河北seo推广系统
  • 网站建设电话销售话术实例建企业网站教程
  • 建设直播网站需要哪些许可证wordpress权限设置
  • 网站备案接口东莞网站优化排名诊断
  • 高端网络建站上海人力资源招聘官网
  • 文字堆积网站类似wordpress的网站
  • 平面设计主要做什么内容丹东seo排名公司
  • 西安西工大软件园做网站的公司湖南做网站 在线磐石网络
  • 如何用python做网站渭南网站建设远景