TypeScript 之 基础类型

  1. 在元素类型后面接上[]
    let list: number[] = [1, 2, 3];
  2. 使用数组泛型,Array<元素类型>
    let list: Array<number> = [1, 2, 3];
  • 元组(Tuple):
    元组类型表示一个已知元素数量和类型的数组,各元素的类型不必相同。 比如,你可以定义一对值分别为string和number类型的元组。
// Declare a tuple type
let x: [string, number];
// Initialize it
x = ['hello', 10]; // OK
  • enum类型是对JavaScript标准数据类型的一个补充。
enum Color {Red, Green, Blue};
let c: Color = Color.Green;
  • void:
    void类型的变量,只能为它赋予undefined和null

  • null 和 undefined
    默认情况下null和undefined是所有类型的子类型。 就是说你可以把null和undefined赋值给number类型的变量。
    然而,当你指定了--strictNullChecks标记,null和undefined只能赋值给void和它们各自。 这能避免很多常见的问题。 也许在某处你想传入一个string或null或undefined,你可以使用联合类型string | null | undefined。

  • 类型断言
    类型断言 告诉编译器,“就要用我指定的类型”。
    类型断言好比其它语言里的类型转换,但是不进行特殊的数据检查和解构。 它没有运行时的影响,只是在编译阶段起作用。 TypeScript会假设你,程序员,已经进行了必须的检查。
    类型断言有两种形式。 其一是“尖括号”语法:
let someValue: any = "this is a string";
let strLength: number = (<string>someValue).length;

另一个为as语法(推荐):

let someValue: any = "this is a string";
let strLength: number = (someValue as string).length;

两种形式是等价的。然而,当你在TypeScript里使用JSX时,只能使用 as语法断言。

猜你喜欢

转载自www.cnblogs.com/cag2050/p/9547320.html