温馨提示×

Typescript中的映射类型介绍

小樊
83
2024-06-14 19:48:28
栏目: 编程语言

在Typescript中,映射类型(Mapped Types)是一种特殊的类型,它允许我们根据现有的类型来创建新的类型。通过映射类型,我们可以在类型级别上修改现有类型的属性,例如将属性变为只读、可选或者去掉某些属性等。

以下是一些常见的映射类型:

  1. Readonly: 将T中所有属性设为只读属性。
type Person = {
  name: string;
  age: number;
};

type ReadonlyPerson = Readonly<Person>;
// {readonly name: string; readonly age: number;}
  1. Partial: 将T中所有属性设为可选属性。
type PartialPerson = Partial<Person>;
// {name?: string; age?: number;}
  1. Required: 将T中所有属性设为必选属性。
type RequiredPerson = Required<Person>;
// {name: string; age: number;}
  1. Pick<T, K>: 从T中选取部分属性K。
type NameOnly = Pick<Person, 'name'>;
// {name: string;}
  1. Record<K, T>: 创建包含指定键值对的类型。
type PersonRecord = Record<'name' | 'age', string>;
// {name: string; age: string;}

映射类型使得我们可以更加灵活地操作现有的类型,从而简化代码并增强类型的安全性。通过合理地运用映射类型,我们可以有效地提高代码的可维护性和可读性。

0