TypeScript 基础 | 青训营

42 阅读2分钟

语法特性

  • 类 Classes
  • 接口 Interfaces
  • 模块 Modules 
  • 类型注解 Type annotations
  • 编译时类型检查 Compile time type checking 
  • Arrow 函数 (类似 C# 的 Lambda 表达式)

TypeScript 基础语法

TypeScript 程序由以下几个部分组成:

  • 模块
  • 函数
  • 变量
  • 语句和表达式
  • 注释

TypeScript 与面向对象

面向对象是一种对现实世界理解和抽象的方法。

TypeScript 是一种面向对象的编程语言。

面向对象主要有两个概念:对象和类。

  • 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
  • :类是一个模板,它描述一类对象的行为和状态。
  • 方法:方法是类的操作的实现步骤。

TypeScript 基础类型

  • boolean、number、string
  • 枚举 enum
  • any、unknown、void
  • never
  • 数组类型[]
  • 元组类型 tuple(元组类型用来表示已知元素数量和类型的数组,各元素的类型不必相同,对应位置的类型需要相同。)

注意: TypeScript 和 JavaScript 没有整数类型。

TypeScript 高级类型

  • 联合类型 |

  • 交叉类型 &

  • 类型断言

  • 类型别名

  • 泛型(如果说 TypeScript 是一门对类型进行编程的语言,那么泛型就是这门语言里的函数参数。)

    泛型中常用的操作符:

    • typeof 获取类型
    • keyof 获取所有键
    • in 遍历枚举类型
    • T\[K] 索引访问
    • extends 泛型约束

    常用的泛型工具:

    • Partial:将类型属性变为可选

    • Required:将类型属性变为必选

    • Readonly:将类型属性变为只读

    • Pick、Record

TypeScript 声明文件

  • declare:三方库需要类型声明文件

  • .d.ts:声明文件定义

  • @types:三方库TS类型包

  • tsconfig.json:定义TS的配置