猫猫说了算
理解是偶然,误解是常态。

来跳个 TypeScript 类型体操吧

远浅发表于: 2022-09-06 08:38分类: 技术

本文是 type-challenges 的个人解答以及知识点串联。

实现 Pick

链接地址

export type MyPick<T, K extends keyof T> = {
  [P in K]: T[P];
};

实现 ReadOnly

7. 实现 ReadOnly

export type MyReadOnly<T> = {
  readonly [K in keyof T]: T[K];
};

第一个元素 & 末尾最后一个元素

最后一个元素第一个元素

export type FirstT<T extends any[]> = T extends [] ? never : T[0];

// infer 用于推断类型
export type LastT<T extends any[]> = T extends [...infer Rest, infer Last]
  ? Last
  : never;

赠人玫瑰, 手有余香。🌹
打赏
特别鸣谢
感谢以下用户对本文的支持与鼓励
加载打赏用户中
发表评论
文章评论
暂无任何评论,快去发表吧~