TypeScript总结(二)

1.函数

this,重载,推断类型,可选参数(?号标识),默认参数(=)

TypeScript总结(二)
 1 function buildName(firstName: string, lastName?: string) {
 2     if (lastName)
 3         return firstName + " " + lastName;
 4     else
 5         return firstName;
 6 }
 7 
 8 let result1 = buildName("Bob");  // works correctly now
 9 let result2 = buildName("Bob", "Adams", "Sr.");  // error, too many parameters
10 let result3 = buildName("Bob", "Adams");  // ah, just right
View Code

 

2.泛型<>

泛型变量,泛型类型,泛型类,泛型约束

1 function identity<T>(arg: T): T {
2     return arg;
3 }

相当于

1 function identity(arg: any): any {
2     return arg;
3 }

3.枚举enum

数字枚举,字符串枚举,异构(混合)枚举,反向映射(TODO),const枚举,外部枚举(declare)

4.类型推论

最佳通用类型,上下文类型

5.类型兼容性

函数、类、泛型、枚举 比较赋值,子类型与赋值

6.高级类型

交叉类型(TODO),联合类型(TODO),类型保护与区分类型(typeof,instanceof),可以为null的类型,类型别名,数字、字符串 字面量类型,枚举成员类型,可辨识联合,完整性检查,多态的this类型,索引类型,映射类型

7.Symbols

8.迭代器、生成器

9.模块

导入导出(export(default),import(和require))

10.命名空间(内部模块)

namespace,别名,命名空间和模块

11.模块解析

12.声明合并

合并接口,合并命名空间,模块扩展

13.JSX

14.装饰器(@)

方法、类、访问器、属性、参数 装饰器,元数据

15.Mixins

16.///指令

17.JavaScript文件类型检查

反向映射

上一篇:Linux-软件包管理-yum在线管理-光盘yum源


下一篇:如何使用@Aspect 实现AOP动态代理 --- AOP实战(二)