TS实现 Exclude和extends解析

实现内置的 Exclude<T, U> 类型,但不能直接使用它本身。

从联合类型 T 中排除 U 中的类型,来构造一个新的类型。

例如:

TypeScript 复制代码
type Result = MyExclude<'a' | 'b' | 'c', 'a'> // 'b' | 'c'

解法:

TypeScript 复制代码
type MyExclude<T, U> = T extends U ? never : T

TS中的extends解析:TypeScript extends 精读与实践 - 知乎 (zhihu.com)

相关推荐
gettingolder13 小时前
linux云原生课程配置环境
linux·运维·服务器
重生之绝世牛码13 小时前
Linux软件安装 —— Elasticsearch集群安装(带密码验证)
大数据·linux·运维·数据库·elasticsearch·软件安装
z.q.xiao13 小时前
【镜像模式】WSL如何访问windows内网服务
linux·网络·windows·gitlab·wsl·dns
小尧嵌入式13 小时前
【Linux开发五】条件变量|信号量|生产者消费者模型|信号概念和常见信号|信号的使用和处理
linux·运维·服务器·开发语言·c++·嵌入式硬件
小林up13 小时前
Ubuntu访问不了Git解决办法
linux·git·ubuntu
optimistic_chen13 小时前
【Docker入门】Docker Image(Docker 镜像)
linux·运维·docker·容器·镜像
UI设计兰亭妙微13 小时前
兰亭妙微:以HTML前端、UI/交互/图标设计赋能数字孪生与大屏设计新标杆
前端·ui·用户体验设计
食咗未13 小时前
Linux BT656转AHD显示调试记录
linux·驱动开发·显示屏·ahd out
爱莉希雅&&&13 小时前
Docker 超详细全量笔记(含参数解释)
linux·运维·服务器·笔记·docker·容器
重生之绝世牛码13 小时前
Linux软件安装 —— ClickHouse集群安装(集成Zookeeper)+ chproxy负载均衡
大数据·linux·数据库·clickhouse·软件安装·clickhouse集群安装·clickhouse负载均衡