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

娱乐网站模板缪斯形象设计高级定制

娱乐网站模板,缪斯形象设计高级定制,百度空间登录,上海网站改版方案ts的Functions 大部分基础内容可以通过这篇blog学习#x1f449;Functions - TypeScript Deep Dive 函数类型在TypeScript类型系统中扮演着非常重要的角色#xff0c;它们是可组合系统的核心构建块. 1.Parameter annotations 你可以像变量注解一样#xff0c;给functio…ts的Functions 大部分基础内容可以通过这篇blog学习Functions - TypeScript Deep Dive 函数类型在TypeScript类型系统中扮演着非常重要的角色它们是可组合系统的核心构建块. 1.Parameter annotations 你可以像变量注解一样给function类型进行注解. // variable annotation let sampleVariable: { bar: number }// function parameter annotation function foo1(sampleParameter: { bar: number }) { }let foo2 (sampleParameter: { bar: number }) {}1.1剩余参数 const fn (array:number[],...items:any):any[] {console.log(array,items)return items }console.log(fn([1,2,3],J4ck,true)); /* output: [ 1, 2, 3 ] [ J4ck, true ] [ J4ck, true ] */1.2this参数 看起来有点像python的self只能写在参数列表的第1个. interface Obj {name: string// 限定getName调用时的this类型getName(this: Obj): string } const obj: Obj {name: J4ck,getName() {return this.name}, } obj.getName() //output:J4ck这样this就会指向调用getName()的obj了. 2.Overloading TypeScript中提供了函数重载的机制不过这个重载其实从1个Javaer的角度来看感觉怪怪的。 实现一个padding()来举例熟悉css的同学肯定知道padding支持好几种写法 .sample1 {/* 应用于所有边 */padding: 5px; }.sample2 {/* 上边下边 | 左边右边 */padding: 5px 5px; }.sample3 {/* 上边 | 右边 | 下边 | 左边 */padding: 5px 5px 5px 5px; }可以看到需要重载3个因此需要声明4个function header,并且在声明最后1个function header后实现整个方法这就是在我看来非常诧异的地方. 可以看到3个重载函数的实现逻辑都在最后1个function中用if(parameter undefind)这样的写法去判断传入了哪些parameter并跳到对应的代码块中. // Overloads function padding(all: number); function padding(topAndBottom: number, leftAndRight: number); function padding(top: number, right: number, bottom: number, left: number); // Actual implementation that is a true representation of all the cases the function body needs to handle function padding(a: number, b?: number, c?: number, d?: number) {if (b undefined c undefined d undefined) {b c d a;}else if (c undefined d undefined) {c a;d b;}return {top: a,right: b,bottom: c,left: d}; }TypeScript 中的函数重载没有任何运行时开销。它只允许你记录希望调用函数的方式并且编译器会检查其余代码。 不过这只是举1个例子其实对于能够使用可选参数实现的function并不推荐使用函数重载。 通过查阅一些资料我自己总结了一下. TypeScript因为可选参数的存在所以在参数列表涉及数量多少的可以用可选参数实现。 function padding(all: number); function padding(topAndBottom: number, leftAndRight: number); //// function padding(a: number, b?: number);参数列表里参数类型不同的时候可以使用函数重载实现. function showName(name:string): string; function showName(names:string[]): string[]; function showName(names: unknown): unknown{if (typeof names string) {return ${names};} else if (Array.isArray(names)) {return names.map(name ${name});} }console.log(showName(J4ck)); //output:J4ck console.log(showName([J4ck,Ju11y])); //output:[ J4ck, Ju11y ]
http://www.zqtcl.cn/news/380246/

相关文章:

  • 怎么开一家网站开发公司百度推广一年大概需要多少钱
  • 小破站下载h5企业模板网站
  • 服务器怎么设置ip做网站凌云seo博客
  • 莱芜四大金刚是谁啊镇江网站优化推广
  • 上海门户网站开发企业号码查询系统
  • 西安做网站设计的公司golang 网站开发 教程
  • 做网站哪些公司专业做app软件开发公司
  • 蒙特网站建设湖北省建设厅网站上岗证查询
  • 宁波网站建设 联系哪家电子商务网站建设过程范文
  • 南宁商城网站建设网站建设的需求文档
  • dedeampz 部署wordpress 网站访问慢如何评价网站是否做的好处
  • 怎样建设个人影视网站设计学专业
  • 没有公司 接单做网站网站建设加盟合作
  • 如何将域名和网站绑定做网站找投资人
  • 网站开发 平台WordPress首页可见
  • 沧州做网站费用打开上海发布
  • 重庆潼南网站建设公司电话网站能调用一些字体
  • 摄影网站设计素材做彩票网站电话多少
  • 开网站公司企业管理网课
  • 相城高端网站建设施工建设集团网站
  • .电子商务网站的开发原则包括网络服务示范区创建情况
  • 网站如何做权重php做网站登陆验证
  • 昆山制造网站的地方网站建设 有聊天工具的吗
  • 自己做网站制作需要多少钱如何免费注册网站域名
  • 如何做网站美化怎样写网站文案
  • 做网站排名的wordpress 调整 行距
  • 三亚文明城市建设服务中心报名网站房地产活动策划网站
  • 休闲食品网站建设规划书常德做网站专业公司
  • 做美工好的网站网页设计排版布局
  • 网站建设公司合同模板下载wordpress微信公众平台开发教程