Typescript | 青训营笔记

61 阅读2分钟

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

为什么 什么是Typescript

JS是动态类型,弱类型语言

TS是静态类型,弱类型语言

  • 静态类型:

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

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

基本语法

1.基础数据类型

基础.JPG

2.对象类型

对象.JPG

3.函数类型

  • 直接在函数上进行补充;
  • 给函数变量赋值类型声明;
  • 使用interface接口类型;
函数.JPG

4.函数重载

重载.JPG

5.数组类型

数组.jpg

6.Typescript补充类型

补充.jpg

7.Typescript泛型

  1. 不预先指定具体的类型,而在使用的时候再指定类型的一种特性
预先.jpg
  1. 泛型不仅可以在函数中,还可以在其他场景
接口.jpg
  1. 泛型高级语法
  • 泛型约束
  • 泛型参数默认类型
约束.jpg

8.类型别名&类型断言

断言.jpg

9.字符串/数字 字面量

字面量.jpg

高级类型

1、联合/交叉类型

  • 联合类型:|A | |B;联合类型表示一个值可以是几种类型之一

    联合.JPG

  • 交叉类型:|A & |B;多种类型叠加到一起成为一种类型,它包含了所有类型的特性

    交叉.JPG

2、类型保护与类型守卫

保护.jpg 守卫.JPG 实现.jpg

3、高级类型

高级1.JPG 高级2.JPG 高级3.JPG

4、函数返回值类型

返回.JPG 返回1.JPG

工程应用

1、Typescript工程应用·Web

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

2、Typescript工程应用·Node

使用TSC编译

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