- 这是我参与第五届青训营伴学笔记创作活动的第4天
TypeScript概述
-
JS 动态类型(执行时才匹配数据类型) 弱类型语言
-
TS 静态类型(提前匹配数据类型) 弱类型语言
为什么选择TypeScript
- js超集
- 包含于兼容所有Js特性,支持共存
- 支持渐进式引入与升级
- 静态类型
- 可读性强 基于TSDoc,ide增强
- 可维护性强 编译阶段暴露错误
- 多人合作的大型项目中,获得更好的稳定性和开发效率
基本语法
基础数据类型
对象类型
- 自定义类型一般都是以大写i开头
函数类型
函数重载
数组类型
泛型
- 泛型约束:限制泛型必须符合字符串
- 泛型参数默认类型
补充类型
类型别名 & 类型断言
字符串/数字 字面量
高级类型
联合/交叉类型
- 存在问题
- 改进
类型保护与类型守卫
- 存在问题
- 改进
实现merge函数类型
- 之前写法
- Ts
- 使用泛型改进
函数返回值类型
工程应用
- webapack
- 配置webapack loader相关配置
- 配置tsconfig.js文件
- 运行webapack启动/打包
- loader处理ts文件时,会进行编译与类型检查
- TSC编译
- 安装Node与npm
- 配置tsconfig.js文件
- 使用npm安装tsc
- 使用tsc运行编译得到的js文件