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

如何在TypeScript中复用已有类型以避免重复声明?

解决类型定义重复的方案

当然可以!你完全可以通过复用已定义的CapturablePieces类型来简化Pieces的定义,彻底消除代码重复。

优化后的代码示例

// 先定义可被捕获的棋子类型
type CapturablePieces = Pawn | Knight | Bishop | Rook | Queen;

// 直接复用CapturablePieces,加上King即可
type Pieces = CapturablePieces | King;

为什么这么做更好?

  • 消除重复代码:不用再重复罗列所有可捕获棋子的类型成员,减少冗余
  • 提升可维护性:后续如果需要修改CapturablePieces的成员(比如新增或移除某类棋子),Pieces会自动同步更新,不需要两处都修改
  • 逻辑更清晰:明确表达了Pieces是“可捕获棋子 + 国王”的集合关系,语义更直观

这种方式在TypeScript这类支持联合类型的语言里是非常标准的最佳实践,完全符合你的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:09:23