Type Script|青训营笔记

72 阅读2分钟

这是我参加第五届青训营伴学笔记创作活动的第4天Type Script

1、 为什么选择他:静态语言:会在执行前进行编译,也是与动态的区别,更强的可读性和可维护性,再多人合作的大项目中,获得更好的稳定性和开发效率

2、 基本语法:1、基础数据类型:字符串,数字,布尔值,null,undefined。2、对象类型:只读属性,可选属性:可以不存在,任意属性。3、在函数类型中可改变参数类型和返回值类型:数组类型:类型+方括号表示、泛型表示、元祖表示、接口表示

泛型:1、泛型约束:限制泛型必须符合字符2、泛型参数默认类型

3、 高级类型:1、联合交叉类型,使用场景:当需要重复些相似的代码时,联合类型IA|IB,联合类型可以表示一个值始自终类型之一,交叉类型:IA&IB,多种类型叠加到一起成为一种类型,包含所需的所有类型的特性。2、类型保护与类型守卫;类型守卫:定义一个函数,他的返回值是一个类型谓词,生效范围为子作用域,实现函数logbook类型,函数接受书本类型,并logger出相关特征,联合类型+类型保护+自动类型推断。3、索引类型:关键字[keyof], 其相当于取值对象中的所有人key组成的字符串字面量,//关键字【in】,其相当于取值,字符串字面量中的一种可能,配合泛型P,即表示每个key,//关键字【?】,通过设定对象可选选项,即可自动推导出子集类型,关键字【extend】跟随泛型出现时,表示类型推断,关键字【infer】出现在类型推荐中,表示定义类型变量,可用于指代类型。