随笔分类 -  TypeScript

摘要:声明文件必需以 .d.ts 为后缀 如果是将声明文件直接存放于当前项目中,则建议和其他源码一起放到 src 目录下 script标签引入 全局变量声明使用 用来定义全局函数的类型 当全局变量是一个类的时候,我们用 来定义它的类型 它用来表示全局变量是一个对象,包含很多子属性 在 declare na 阅读全文
posted @ 2019-04-03 12:04 CodingSherlock 阅读(262) 评论(0) 推荐(0)
摘要:类型 声明类型string表示字符串,而String表示String对象 null undefined 是所有类型的子类型 任意值 声明一个变量为任意值any之后,对它的任何操作,返回的内容的类型都是任意值 变量如果在声明的时候,未指定其类型,那么它会被识别为任意值类型 如果定义的时候没有赋值,不管 阅读全文
posted @ 2019-04-03 11:01 CodingSherlock 阅读(934) 评论(0) 推荐(0)
摘要:使用JSDoc /**基础类型*/ /**@type{string} */ /**联合类型 */ /**@type{string | number} */ /**数组类型 */ /**@type{string[]} */ /**@type{Array.<string>} */ /**对象字面量类型 阅读全文
posted @ 2018-10-11 19:29 CodingSherlock 阅读(1422) 评论(0) 推荐(0)
摘要:类不能和其他的类或者变量合并 阅读全文
posted @ 2018-10-11 16:22 CodingSherlock 阅读(542) 评论(0) 推荐(0)
摘要:可选的模块加载 import id = require("...") 模块里不要使用命名空间模块结构上的危险信号(1)文件的顶层声明是 export namespace Foo {...},删除Foo并把所有内容上移 (2)文件只有一个export class或export function 考虑使 阅读全文
posted @ 2018-10-11 15:25 CodingSherlock 阅读(167) 评论(0) 推荐(0)
摘要:交叉类型为将两个类型混合 联合类型表示可以是几种类型之一,用 | 分隔 如果一个值是联合类型,那我们只能访问次联合类型的所有类型的公共成员 可以使用typeof检查基础类型和instanceof来详细类型 typescript会把null和undefined区别对待 nul和undefined是所有 阅读全文
posted @ 2018-10-11 12:05 CodingSherlock 阅读(194) 评论(0) 推荐(0)
摘要:typescript结构化类型系统的基本规则是,如果x要兼容y,那么y至少具有与x相同的属性 忽略额外的参数在js中是很常见的 枚举类型与数字类型兼容,并且数字类型与枚举类型兼容。不同枚举类型是不兼容的 比较两个类类型对象时,只有实例部分会被比较。静态成员和构造函数不在此比较范围 类的私有成员和受保 阅读全文
posted @ 2018-10-11 10:34 CodingSherlock 阅读(252) 评论(0) 推荐(0)
摘要:/** * 数字枚举 */ //声明,自动增长,第一个元素不声明默认值为0 enum Count{ one=1, two, three, four } //调用 function add(num:number,count:Count){return num+count} add(5,Count.one) /** * 字符串枚举 */ enum Word{ one='o... 阅读全文
posted @ 2018-10-10 14:46 CodingSherlock 阅读(372) 评论(0) 推荐(0)
摘要:/** * * 泛型的基本表示方法 */ function fn(prop:T):T{ return prop; } //调用 let output=fn('string'); //同样可以利用类型推论来判断类型 let output2=fn('string'); //返回类型为T的数组 function array(prop:T[]) : T[]{ console.log(pr... 阅读全文
posted @ 2018-10-10 13:17 CodingSherlock 阅读(234) 评论(0) 推荐(0)
摘要:function add(x:number,y:number):number{ return x+y; } let myAdd: (x:number,y:number) =>number =function(x:number,y:number):number{ return x+y; } let myAdd2: (x:number,y:number) =>number = funct... 阅读全文
posted @ 2018-10-10 11:12 CodingSherlock 阅读(87) 评论(0) 推荐(0)
摘要:接口继承类 接口拥有类的全部属性及方法,但不提供实现,对于private和protected声明的成员,只能被该类自身或其子类继承 派生类必须调用super()来执行基类的构造函数 TypeScript里成员默认声明为public private声明的成员不能再类的外部访问 protected声明的 阅读全文
posted @ 2018-10-10 11:11 CodingSherlock 阅读(221) 评论(0) 推荐(0)