TypeScript - type

在 TypeScript 中,type 关键字用于定义类型别名,即为一个类型创建新的名字。这种类型别名可以用于基本类型、联合类型、交叉类型、对象类型、函数类型等多种类型结构。

一.基本语法

bash 复制代码
type NewTypeName = ExistingType;

二.常见使用场景

  • 1.基本类型别名 给已有类型起一个新的名字,方便后续使用。
bash 复制代码
type ID = number;
let userId: ID = 123;
  • 2.联合类型 可以将多个类型组合在一起。
bash 复制代码
type Status = 'success' | 'error' | 'loading';

let requestStatus: Status;
requestStatus = 'success';  // 合法
requestStatus = 'failed';   // 错误,不在 'success' | 'error' | 'loading' 之中
  • 3.对象类型 定义一个对象的结构。
bash 复制代码
type User = {
  id: number;
  name: string;
  age?: number;  // 可选属性
};

const user: User = {
  id: 1,
  name: 'Alice',
};
  • 4.函数类型 定义一个函数的签名。
bash 复制代码
type Add = (a: number, b: number) => number;

const add: Add = (x, y) => x + y;
  • 5.交叉类型 可以将多个类型合并在一起,使得变量同时满足多个类型。
bash 复制代码
type Person = {
  name: string;
  age: number;
};

type Employee = {
  employeeId: number;
  department: string;
};

type Staff = Person & Employee;

const staffMember: Staff = {
  name: 'Bob',
  age: 30,
  employeeId: 12345,
  department: 'IT'
};
  • 6.复杂类型组合 可以通过 type 定义更复杂的类型结构,包括数组、元组等。
bash 复制代码
type Point = [number, number];  // 元组
let p1: Point = [0, 0];

type StringArray = string[];  // 字符串数组
let names: StringArray = ['Alice', 'Bob'];

三.使用 type 的好处

  • 可读性和复用性:通过类型别名,你可以给复杂的类型起一个简单的名字,使代码更容易理解和复用。
  • 类型安全:你可以确保值符合特定的类型,防止意外的类型错误。
  • 灵活性:type 可以定义联合类型、交叉类型等复杂类型,为开发者提供极大的灵活性。
相关推荐
xexpertS4 小时前
CI/CD 熔断机制:如何通过编排级熔断器提升开发者效率
java·linux·运维
带娃的IT创业者4 小时前
突破内存瓶颈:利用 Nvidia GPU 显存作为 Linux Swap 空间的深度实践
linux·运维·服务器·nvidia·swap·gpu显存
zy happy4 小时前
VMware虚拟机添加新的硬盘
java·linux·jvm·docker
LCG元4 小时前
嵌入式开发踩坑排查实战:从 STM32 外设初始化到 Linux SPI 驱动的 15 类硬件疑难故障深度复盘
linux·stm32·单片机
代码AC不AC5 小时前
【Linux】Socket编程TCP
linux·tcp·socket编程
扛枪的书生5 小时前
SeaweedFS 学习总结
linux
minglie15 小时前
香橙派zero3配个iic屏显示ip
linux·学习
默默提升实验室5 小时前
Ubuntu 22.04.5 配置静态IP,手动安装SSH
ubuntu
edwarddamon5 小时前
SSH 指定端口建立隧道:打通内网访问完整教程
linux·命令行
ShirleyWang0126 小时前
Day02 K3s NGF(Nginx Gateway Fabric)单 Worker 环境网关更新与故障处置 SOP
linux·服务器·python·k8s·k3s