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

TypeScript如何基于已有类型A、B声明符合要求的新对象类型C?

TypeScript 类型声明解法

你可以通过两种方式基于现有类型 A 和 B 生成符合要求的类型 C:

方式1:使用原生映射类型

type C = { [K in keyof A]: B }

方式2:使用内置工具类型(更简洁)

type C = Record<keyof A, B>

原理解释

  • keyof A 会提取类型 A 的所有键组成联合类型:"home" | "info" | "about"
  • 映射类型语法 [K in keyof A] 会遍历上述联合类型的每个值,作为新类型的键
  • 两种写法最终生成的 C 类型和你给出的预期效果完全一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 08:00:01