这是我参与「第四届青训营 」笔记创作活动的的第4天
什么是TypeScript
TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个超集,添加了可选的静态类型和面向对象编程。TypeScript扩展了JavaScript的语法,所以任何现有的JavaScript程序可以不加改变的在TypeScript下工作。
TypeScript发展历史
- 2012-10:微软发布了TypeScript第一个版本(0.8)
- 2014-10:Augular发布了基于TypeScript的2.0版本
- 2015-04:微软发布了Visual Studio Code
- 2016-05:@types/react发布,TypeScript可开发React
- 2020-09:Vue发布了3.0版本,官方支持TypeScript
- 2021-11:v4.5版本发布
为什么选择使用TypeScript
JS是动态类型的弱类型语言;TS是静态类型的弱类型语言。静态类型的可读性增强、可维护性增强,因此在多人合作的大型项目中,获得更好的稳定性和开发效率。另外,TS是JS的一个超集,TS包括并兼容所有JS特性,支持共存,支持渐进式引入与升级
基本语法
基础数据类型
在JS的基础数据类型的基础上加入数据类型的定义
对象类型
any是TS中华特有的类型,表示所有类型都可以
函数类型
声明类型的两种方式:
-
直接在函数上进行类型的补充
-
给函数变量赋值函数类型声明
数组类型
高级类型
联合/交叉类型
case:为书籍列表编写类型
→
类型声明繁琐,存在较多重复
solution:
- 联合类型:IA|IB;联合类型表示一个值可以是几种类型之一
- 交叉类型:IA&IB;多种类型叠加到一起成为一种类型,它包含了所需的所有类型的特性
类型守卫
函数返回值类型
- 实现函数delayCall的类型声明
- delayCall接受一个函数作为入参,其发现延迟1s运行函数
- 其返回promise,结果为入参函数的返回结果