这是我参与「第五届青训营 」伴学笔记创作活动的第 5 天
Javascript是动态类型,弱类型语言
TypeScript是静态类型的语言:
静态类型:
- 可读性增强:基于语法解析TSDoc,ide增强
- 可维护性增强:在编译阶段暴露大部分错误,使得在多人合作的大型项目中,获得更好的稳定性和开发效率 JS的超集:
- 包含于兼容所有Js特性,支持共存
- 支持渐进式引入与升级
基础类型定义约束:
效果:
TS支持函数重载:
TS的高级类型
联合/交叉类型
常见情景:
联合类型: iA|iB;联合类型表示一个值可以是几种类型之一
交叉类型: iA&iB;多种类型叠加到一起成为一种类型,它包含了所需的所有类型的特性
类型保护与类型守卫
以下情况会报错:
定义一个类型守卫:
工程应用:
Web:例如webpack
-
配置webapack loader相关配置 loader是能将不属于webpack的文件转换为 webpack可以识别的文件。
-
配置tsconfig.js文件
可以配置不同的约束行为
-
运行webpack启动/打包
-
loader处理ts文件时,会进行编译与类型检查
相关loader:
1.awesome-typescript-loader
2.babel-loader
Node 使用TSC编译
1.安装Node与npm
2.配置tsconfig.js文件
3.使用npm安装tsc
4.使用tsc运行编译得到js文件