IdbI

typescript笔记

  • Partial
type Partial<T> = {
  [P in keyof T]?: T[P];
};
  • Required
type Required<T> = {
  [P in keyof T]-?: T[P];
};
  • Readonly
type Readonly<T> = {
  readonly [P in keyof T]: T[P];
};
  • Record
type Record<K extends keyof any, T> = {
    [P in K]: T;
};
  • Pick
type Pick<T, K extends keyof T> = {
  [P in K]: T[P];
};
  • Exclude
type Exclude<T, U> = T extends U ? never : T;
- Omit
type Omit<T,K> = Pick<T,Exclude<keyof T, K>>
  • Extract
Type Extract<T, U> = T extends U ? T : never;
  • NonNullable
type NonNullable<T> = T extends null | undefined ? never : T;
  • Parameters
type Parameters<T extends (...args: any[]) => any> = T extends (...args: infer P) => any ? P : never;
  • Mutable
type Mutable<T> = {
  -readonly [P in keyof T]: T[P]
}
返回上级