chenfei-hnu / Blog

个人整理的跟前端相关的文档 ( This is some front-end development related documentation )
9 stars 2 forks source link

TypeScript #41

Open chenfei-hnu opened 4 years ago

chenfei-hnu commented 4 years ago

TypeScript是 JavaScript 的一个超集,本质上是为 JavaScript 增加了静态类型声明

作用:方便多人协作项目中函数里变量命名和管理,便于后续进行代码重构,增加代码可维护性和可读性,解决编译阶段的因为变量类型导致的错误,让IDE支持模块自动导入,自动补全以及查看模块定义等

使用: 除了对变量定义,函数参数以及返回值设置基础静态数据类型限定外,还可以使用interface对整个对象的各个属性进行限制,使用泛型对列表变量进行限制,使用联合类型及交叉类型,元组类型等应对更加复杂的限制要求

使用类,方法,访问,属性,参数装饰器等对源代码进行功能增强

反射可以获取对象的类型,成员/静态属性的信息(类型),方法的参数类型、返回类型Reflect.getMetadata,可以利用反射实现服务端数据转换

重写组件时,可以使用Omit忽略继承部分属性方法 extends Omit<TableProps, 'columns'>