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

TypeScript中如何指定函数参数为接口的键之一?

在TypeScript中用接口的键作为函数参数类型

当然可以实现,直接用keyof操作符就行——它不仅支持通过typeof获取对象的键类型,也能直接作用于接口,返回接口所有键名组成的联合类型,完全不用硬编码键名列表。

修改后的代码如下:

export interface MyInterface {
  option1: boolean;
  option2: boolean;
  option3: boolean;
  option4: boolean;
}

function myFunction(arg: keyof MyInterface): void {
    console.log("arg:", arg);
}

这样定义后,arg的类型会自动对应MyInterface的所有键(等价于'option1' | 'option2' | 'option3' | 'option4'),后续如果接口里新增或删除属性,函数的参数类型会自动同步更新,不用手动修改联合类型,能避免维护遗漏的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 16:42:31