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

html 网站添加悬浮二维码免费公司网址怎么注册

html 网站添加悬浮二维码,免费公司网址怎么注册,2008r2做网站,重庆百度网络推广类型推断 指不需要指定变量的类型#xff0c;TS编译器可以根据某些规则自动推断出类型。 什么时候会有类型推断#xff1f; 声明变量时没有指定类型函数默认参数函数返回值......let a; // 这时自动推断为any类型 let b 1; // 推断为number类型 let c []; // 推断为由any类… 类型推断 指不需要指定变量的类型TS编译器可以根据某些规则自动推断出类型。 什么时候会有类型推断 声明变量时没有指定类型函数默认参数函数返回值...... let a; // 这时自动推断为any类型 let b 1; // 推断为number类型 let c []; // 推断为由any类型构成的数组 let d (x1) x1; // 函数传参时默认参数被推断成number类型返回值也会被推断 let e [1,null]; // 推断出兼容所有数据的类型number和null的联合类型有时候TS类型推断不符合我们的预期我们应该比编译器更有信心它应该是什么类型类型断言就允许我们覆盖TS的推论。 interface Foo{bar: number } let foo: Foo {} as Foo; // 如果一个对象按照接口的约定需要有很多的属性和方法难以在声明的时候定义完全。这时候可以用断言 foo.bar 1; // 具体的定义在这里 注意类型断言不能乱用要对上下文环境有充足的预判没有任何根据的断言会带来安全隐患 类型兼容 TS允许类型相互兼容的变量函数、类等结构相互赋值。 当一个类型Y可以被赋值给另一个类型X时就认为类型X兼容YX为目标类型Y为源类型。 兼容规则 结构之间兼容成员少的兼容成员多的函数之间兼容参数多的兼容参数少的接口兼容性 interface X {a: any;b: any; } interface Y {a: any;b: any;c: any; } let x: X {a:1,b:2}; let y: Y {a:1,b:2,c:3}; x y; // x兼容y 成员少的会兼容成员多的 函数兼容性 // 参数个数的兼容 type Handler (a: number,b: number) void; function hof(handler: Handler) {return handler } let handler1 (a:number) {}; hof(handler1); // 一个参数可以兼容 let handler2 (a: number,b: number,c: number) {}; // hof(handler2); // 三个参数不被兼容// 可选参数和剩余参数的兼容 let a1 (p1: number, p2: number) {}; let b1 (p1?: number, p2?: number) {}; let c1 (...args: number[]) {}; a1 b1; a1 c1; // b1 a1; // 可选参数不能被兼容。需要将tsconfig.json中“strictFunctionTypes”置为false即可 // b1 c1; c1 a1; c1 b1; 类的兼容性 两个定义不同的类互不兼容子类在继承父类后没有做改动可以兼容父类。 泛型的兼容性 两个定义完全一样的泛型函数相互兼容 类型保护 TypeScript能够在特定的区块中保证变量属于某种确定的类型。可以在此区块中放心地访问此类型的属性和方法。 比如我们要判断一个对象是否含有某个方法 interface OBJ {name: string,age: number,sex: boolean } let obj: OBJ {name: typescript,age: 10,sex: true, }; if(obj.sex) // obj中有sex属性所以OK {console.log(has sex); } // if(obj.bac) {} // obj中没有bac属性此处报错。 我们有四种提供类型保护的方式 instanceof    用于判断一个实例是否属于某个类in    判断一个属性/方法是否属于某个对象typeof    用于判断基本类型类型保护函数    当判断逻辑复杂时可以自定义判断函数 class Java {helloJava(){console.log(hello java);}java: any; } class JavaScript {hellloJavaScript(){console.log(hello javascript);}javascript: any; }// 类型保护函数 注意参数类型 和 返回值类型 的关系 function isJava(lang: Java|JavaScript):lang is Java {return (lang as Java).helloJava ! undefined }function getLanguage(type: number,x: string|number|boolean) {let lang type 1 ? new Java() : new JavaScript();// instanceof 判断lang是否属于Java类if(lang instanceof Java){lang.helloJava(); // 在这个区块中能够保证lang一定是java的实例调用自己的方法}else{lang.hellloJavaScript(); // 这个区块中一定能够保证lang是JavaScript的实例}// in “helloJava”方法是否属于lang对象if(helloJava in lang){lang.java; // 在这个区块中能够保证lang是java的实例}else{lang.javascript // 这个区块中能够保证lang是JavaScript的实例}// typeof 用于判断基本类型if(typeof x string){x.length // 程序进入这个区块能够保证x是string类型。可以调用字符串原生方法}else if(typeof x number){x.toFixed(2); // 在这里能够调用数字的原生方法}else{x !x;}// 类型保护函数 在定义的时候注意返回值的类型和参数类型的关系if(isJava(lang)){lang.helloJava();}else{lang.hellloJavaScript();} } getLanguage(2,str);   转载于:https://www.cnblogs.com/V587Chinese/p/11474686.html
http://wiki.neutronadmin.com/news/67967/

相关文章:

  • 网站有哪些元素组成网站建设如何设计数据库
  • 如果在阿里云上做自己的网站ppt如何做链接打开一个网站
  • 购物网站模板带后台广州建网站哪家好
  • 律师做网站推广有用吗wordpress 相关产品
  • 佳木斯做网站中国建筑今天最新消息
  • 廊坊建设部网站wordpress主题软件
  • 网站备案号链接东莞英文建站
  • 如何在百度里建网站西安网站制作首页
  • 网站建设经验介绍兴平市住房和城乡建设局门户网站
  • 上海建立公司网站湛江网站
  • 取消网站验证码漳州网站建设到博大
  • 试析媒体网站品牌建设找外国男人做老公网站
  • 素材网站的图可以做海报吗萧山建设信用网
  • 什么网站可以赚钱啊大沥做网站
  • 广西建设工会网站江苏省建设厅网站官网
  • 哪种类型的网站比较难做南宁制作网站的公司
  • 专业柳州网站建设多少钱天津建设局网站
  • 网站搜索优化找哪家手机怎么搭建网站源码
  • 无锡市建设工程质量监督站网站2021安全员证报名入口
  • 昆明网站建设系统有哪些重庆找工作哪个网站好
  • 制作公司主页网站十大高端全屋定制
  • 南通网站建设费用成都的网站建设公司哪家好
  • 大连专业手机自适应网站建设wordpress 数据库下载
  • 如何做古诗词网站万维设计
  • 政务网站建设情况汇报商城网站策划书
  • 网站改版 降权罗湖网站公司
  • 湛江外包做网站怎样建立一个自己的网站
  • 公司网站建设模板企业网站建设 毕业设计
  • 阿克顿巴网站建设的目的济南网站中企动力
  • 安徽省建设工程信息网官网是什么网站长沙企业seo服务