You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在TypeScript中实现NullCheck工具类型,将类型属性设为可空?

实现TypeScript的NullCheck工具类型

你需要的NullCheck工具类型可以通过TypeScript映射类型实现,核心逻辑是遍历目标类型的所有属性,为每个属性的类型添加null联合选项:

// 定义NullCheck工具类型
type NullCheck<T> = {
  [K in keyof T]: T[K] | null;
};

// 原接口A
interface A {
  a: number;
  b: boolean;
}

// 使用工具类型得到类型B
type B = NullCheck<A>;

// 此时B的结构等价于:
// type B = {
//   a: number | null;
//   b: boolean | null;
// }

逻辑说明

  • keyof T:获取类型T的所有属性名构成的联合类型(此处为"a" | "b")
  • [K in keyof T]:遍历每个属性名,对每个属性执行类型转换
  • T[K] | null:将原属性类型T[K]与null组合成联合类型

内容的提问来源于stack exchange,提问作者Rick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 13:45:43