TypeScript 基础类型

69 阅读2分钟

TypeScript 基础类型

1.布尔类型

let value: boolean = false;

变量声明语法:冒号 : 前面是变量名称,后面是变量类型。

2.数字类型

let value: number = 7;

3.字符串类型

let value: string = "yeats";

4.数组类型

数组类型有两种表示方法,第一种在元素类型后接上 [],表示由此类型元素组成的一个数组:

let list: number[] = [1, 2, 3];

第二种方式是使用数组泛型,Array<元素类型>

let list: Array<number> = [1, 2, 3];

5.void类型

当一个函数没有返回值时,可以将其返回值类型定义为 void:

function doNothing(): void {
  let a  = 10
}

声明一个 void 类型的变量没有什么用,它只能被赋值为 undefinednull.

6.null 类型和 undefined 类型

undefinednull 是所有类型的子类型。

一般项目是默认开启 --strictNullChecks 检测的,如果你将 tsconfig.jsonstrictNullChecks 选项设置为 false,下面这种操作不会报错,不过尽量不要这么做:

let num: number = undefined

7.any 类型

有时候接收来自用户的输入,我们不能确定其变量类型的。这种情况下,我们不希望类型检查器对这些值进行检查,而是直接让它们通过编译阶段的检查,此时可以使用 any

let input: any = 'nothing'input = 0                   // ok
input = true                // ok
input = []                  // ok
input = null                // ok

如果一个数据是 any 类型,那么可以访问它的任意属性,即使这个属性不存在,就相当于在js中声明一个变量:

let anything: any = 10

anything.eat()              // ok
anything.name               // ok
anything[0]                 // ok
anything()                  // ok

8.object 类型

object 表示非原始类型:

let obj: object

// 枚举类型
enum TokenType {
  ACCESS = 'accessToken',
  REFRESH = 'refreshToken'
}

obj = TokenType
obj = [1, 2, 3]
obj = [1, 'string'] // 元组类型
obj = { a: 1 }

可以发现枚举、数组、元组和普通对象都是 object 类型。

9.需要注意的点

  1. TypeScript 中描述类型要用 小写,比如 boolean、number、string等;
  2. 大写开头的如 Boolean、Number、String 代表的是 JavaScript 的构造函数.