TypeScript 入门篇(二)——数据类型

157 阅读2分钟

这是我参与8月更文挑战的第18天,活动详情查看:8月更文挑战

图怪兽_59bad586c4d2a7cb53bf9a0e47fa37ae_25026.jpg

前言

TypeScript 是 JavaScript 类型的超集,它可以编辑成纯 JavaScript。TypeScript 可以在任何浏览器、任何计算机和任何操作系统上运行,并且是开源的。

基本类型

元组(Tuple)

Tuple 允许数组的元素类型可以不用相同,如定义一组值为 BooleanString 类型的元组

image.png

let x: [boolean, string];
x = [true, '10'];
x = [5, '10']; // Type 'number' is not assignable to type 'boolean'.

当访问一个越界(不存在)的元素时,是使用联合类型(Union Types)替代

x[2] = true; // OK
x[5] = 9; // Error

联合类型 表示取值可以为多种类型中的一种,用 | 分隔每个类型,如:string | number

枚举(Enum)

Enum 是对JavaScript标准数据类型的一个补充,用于定义数值集合,如尺寸只能大中小,日期限定为1月2月3月等

enum Size {Large, Middle, Small};
enum Date {Jan, Feb, Mar};
let s: Size = Size.Large;
let d: Date = Date.Feb;

元素编号在默认情况下是从0开始,可以指定对应的值,也可以全部赋值

enum Size {Large = 1, Middle = 2, Small = 4};
let s: Size = Size.Large;

枚举类型的便利是可以从枚举的值得到相应的名字

enum Size {Large = 1, Middle = 2, Small = 4};
let s: string = Size[4];

console.log(s); // Small

image.png

Any

Any 可以赋予任意类型的值

let a: any = 1;
a = '1';
a = true;

Never

Never 表示的是那些永不存在的值的类型。例如,never 类型是那些总是会抛出异常或根本就不会有返回值的函数表达式箭头函数表达式的返回值类型

function infiniteLoop(): never {
    while (true) { }
}

Object

Object 表示非原始类型,也就是除 numberstringbooleansymbolnullundefined 之外的类型。

至此,所有的数据类型已经介绍完了

欢迎关注我的公众号:A纲 Coder,获得日常干货推送。最后再次感谢您的阅读,我是程序猿憨憨