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

Typescript 4.4+ 版本下如何给函数参数设置合适的默认值?

问题原因

  • TypeScript 中带有默认值的参数本身就隐含了可选属性,不需要额外添加可选标记?,第一种写法同时使用?和默认值属于语法错误,因此无法正常生效。

最简解决方案

直接移除可选标记?即可,无需改为对象传参:

const test = ( a: number, b: boolean = true ): number => {
    return b ? a : 0
}

调用示例

  • 只传第一个参数:test(10),此时b默认取值为true,返回结果为10
  • 传入两个参数:test(10, false),此时b取值为传入的false,返回结果为0

补充说明

如果后续参数数量变多、存在大量可选参数的场景,再考虑使用对象解构传参的写法,这种场景下对象传参可以避免传参时需要严格对应参数顺序的问题,可读性更高;参数较少的场景直接使用普通默认参数即可,更简洁。

内容的提问来源于stack exchange,提问作者Bru Mas Ribera

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 04:45:08