前端TypeScript入门 | 青训营笔记

82 阅读1分钟

这是我参与「第四届青训营 」笔记创作活动的的第9天

为什么什么是TypeScript

TypeScript发展历史

  • 2012-10:微软发布了 TypeScript 第一个版本(0.8)
  • 2014-10:Angular 发布了基于.TypeScript 的 2.0 版本
  • 2015-04:微软发布了 Visual Studio Code
  • 2016-05:@types/react 发布,TypeScript 可开发 React
  • 2020-09:Vue 发布了 3.0 版本,官方支持 TypeScript
  • 2021-11:v4.5版本发布

JavaScript:动态类型,弱类型语言

TypeScript:静态类型,弱类型语言

静态类型:

  • 可读性增强:基于语法解析TSDoc,ide增强
  • 可维护性增强:在编译阶段暴露大部分错误
  • 多人合作的大型项目中,获得更好的稳定性和开发效率

JS的超集:

  • 包含于兼容所有JS特性,支持共存
  • 支持渐进式引入与升级

基本语法

基础数据类型

截屏2022-08-05 10.57.55.png

对象类型

截屏2022-08-05 11.42.34.png

函数类型

截屏2022-08-05 11.43.04.png

函数重载

截屏2022-08-05 11.43.26.png

数组类型

截屏2022-08-05 11.43.50.png

TypeScript补充类型

截屏2022-08-05 11.44.23.png

TypeScript泛型

截屏2022-08-05 11.44.52.png 截屏2022-08-05 11.45.15.png

类型别名&类型断言

截屏2022-08-05 11.45.46.png

字符串/数字 字面量

截屏2022-08-05 11.46.24.png

高级类型

联合/交叉类型

截屏2022-08-05 11.47.04.png 截屏2022-08-05 11.53.45.png

类型保护与类型守卫

截屏2022-08-05 11.54.16.png 截屏2022-08-05 11.54.31.png

高级类型

截屏2022-08-05 11.54.56.png 截屏2022-08-05 11.55.15.png 截屏2022-08-05 11.55.30.png

函数返回值类型

截屏2022-08-05 11.55.54.png 截屏2022-08-05 11.56.21.png

工程应用

TypeScript工程应用 - web

webpack

  • 配置webpack loader相关配置
  • 配置tsconfig.js文件
  • 运行webpack启动/打包
  • loader处理ts文件时,会进行编译与类型检查 相关loader:

www.npmjs.com/package/bab… npmjs.com/package/awesome-typescript-loader

TypeScript工程应用 - Node

01.使用TSC编译 截屏2022-08-05 12.00.45.png

  • 安装Node与Npm
  • 配置tsconfig.js文件
  • 使用npm安装tsc
  • 使用tsc运行编译得到js文件