数组类型

  1. const arr: Array<number> = [1,2,3] // 表示纯数字类型的数组
  2. const arr: number[] = [1,2,3] // 纯数字类型的数组另一种写法

元组类型

元组允许存储不同类型的元素,元组可以作为参数传递给函数。

  1. const tuple: [number,string] = [1,'a']

枚举类型

使用枚举我们可以定义一些有名字的数字常量。 枚举通过enum关键字来定义

  1. enum PostStatus {
  2. aaa,
  3. bbb,
  4. ccc,
  5. ddd
  6. }

枚举类型会被编译成一个双向的键值对对象(可以通过键获取值也可以通过值去获取键)

  1. var PostStatus
  2. (function (PostStatus){
  3. PostStatus[PostStatus["aaa"] = 0] = "aaa"
  4. })(PostStatus || (PostStatus = {}))

如果不会通过索引值的方式去访问枚举 PostStatus[0] => aaa 可以使用常量枚举

  1. const enum PostStatus {
  2. aaa,
  3. bbb,
  4. ccc,
  5. ddd
  6. }
  7. let PostStatus = [PostStatus.aaa, PostStatus.bbb, PostStatus.ccc, PostStatus.ddd]
  8. //生成后的代码为
  9. var PostStatus = [0 /* aaa */, 1 /* bbb */, 2 /* ccc */, 3 /* ddd */];