这是我参与「第五届青训营 」伴学笔记创作活动的第 四 天
4. TypeScript入门
4.1 为什么是TypeScript?
4.1.1 TypeScript发展历史
4.2.2 什么是TypeScript?
| JS | TS |
|---|---|
| 动态类型 | 静态类型 |
| 弱类型语言 | 弱类型语言 |
静态类型
- 可读性增强:基于语法解析TSDoc,ide增强
- 可维护性增强:在编译阶段暴露大部分错误
- 多人合作的大型项目中,获得更好的稳定性和开发效率
JS的超集
- 包含于兼容所有的JS特性,支持共存
- 支持渐进式引入与升级
编辑器推荐:Visual Studio Code
4.2 基本语法
基础数据类型
对象类型
函数类型
函数重载
数组类型
TypeScript补充类型
TypeScript泛型
类型别名 & 类型断言
字符串/字符 字面量
4.3 高级类型
4.3.1 联合/交叉类型
- 联合类型:IA | IB;联合类型表示一个值可以是几种类型之一
- 交叉类型:IA & IB;多种类型叠加到一起成为一种类型,它包含了所需的所有类型的特性
4.3.2 类型保护与类型守卫
4.3.3 高级类型
4.3.4 函数返回值类型
4.4 工程应用
TypeScript工程应用-Web
- 配置webapack loader相关配置
- 运行webpack启动/打包
- 配置tsconfig.js文件
- loader处理ts文件时,会进行编译与类型检查
相关loader:
TypeScript工程应用-Node
- 安装Node与npm
- 配置tsconfig.js文件
- 使用npm安装tsc
- 使用tsc运行编译得到js文件