第一章 介绍typescript
1.JavaScript的实现都必须以ECMAScript标准为基础,java和javascript没关系,typescript保证可以和js一起运行。
2.出身微软,vscode几乎由typescript实现。
第二章 类型和函数
1.typescript是js的超集,推荐使用const、let(少用var)
2.类型断言,明确告知编译器我们究竟想干什么,是一种修正方案,尖括号和关键字as表示。
3.在JSX中,尖括号是泛型,as是断言。
4.泛型可以用尖括号、类型推断。
5.枚举(省去一一列举了,比方通过数字表达订单状态,即数字枚举),字符串枚举也很常用。
6.数字枚举有反向映射,字符串枚举没有。
7.symbol是唯一的。
8.for...of和for...in的区别
用于迭代器的返回值不同,for...in迭代的是对象的键,for...of迭代的是对象的值;for...in可以操作任何对象,提供了查看对象属性的一种方法,for...of关注迭代对象的值。
9.高级类型,interface对字典进行类型约束,联合变量用竖线|分隔每个类型。(联合类型取的是交集,交叉类型取的是并集。)
10.类型保护,只要定义一个函数即可,但返回值必须是一个主谓宾语句,person is teacher就是类型保护语句。
11.typeod在typescript中只能匹配基本类型;instanceof类型保护更精细,可以将类也作为比较对象。
12.使用索引类型,编译器就能够检查使用了动态属性名的代码;映射类型是从旧类型中创建新类型的一种方式。
13.类型推导:在没有明确指出类型地方,编译器会自己推测当前变量的类型。(没看懂)
14.函数
ts中的每个函数参数都必须要有值,就是必须占住坑,多一个少一个都不能通过编译,如果是可选参数,可以放在必要参数后面,然后使用问号标注。
带默认值的参数不需要放在参数的最后面,可以出现在任何位置。
剩余参数:把所有参数收集到一个变量中,加省略号即可。
15.回调函数和promise
第三章 接口与类
16.可索引类型,具有一个“索引签名”,描述了对象索引的类型以及相应的索引返回值类型。
17.继承接口,接口可以互相继承,能从一个接口里将成员复制到另一个接口里,一个接口可以继承多个接口,创造出多个接口的继承接口。
18.类、接口、继承
19.存取器,只带get不带set的存取器自动被推断为readonly,即不允许改变它的值。