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

JSDoc中重载函数的描述应放置在何处?

JSDoc重载函数的描述放置位置

对于带@overload标注的函数,通用描述需要放在第一个@overload注释块的最顶部,而不是最后对应函数实现的注释块里——这就是你之前写法无法生效的原因。

正确示例:通用描述放在首个@overload块

/**
 * 这是foo函数的通用描述,所有重载形式都会继承该说明
 * @overload
 * @param {string} arg0
 * @return {void}
 *//**
 * @overload
 * @param {number} arg0
 * @param {number} arg1
 * @return {void}
 *//**
 * @param {string | number} arg0
 * @param {number} [arg1]
 */
function foo(arg0, arg1) {
  // ...
}

进阶:给特定重载添加专属描述

如果需要为某一个重载形式单独补充说明,可以在对应的@overload块内添加描述(或使用@description标签):

/**
 * foo函数用于处理不同类型的参数组合
 * @overload
 * @description 仅接收单个字符串参数的重载形式
 * @param {string} arg0
 * @return {void}
 *//**
 * @overload
 * @description 接收两个数字参数的重载形式
 * @param {number} arg0
 * @param {number} arg1
 * @return {void}
 *//**
 * @param {string | number} arg0
 * @param {number} [arg1]
 */
function foo(arg0, arg1) {
  // ...
}

关键注意点

  • 不要把通用描述放在最后对应函数实现的注释块中:重载场景下,JSDoc工具和代码编辑器会优先解析@overload块的信息,实现块的描述不会被关联到各个重载形式上,导致无法生效。
  • 首个@overload块的顶部描述会作为所有重载的通用说明,后续@overload块的专属描述会补充该通用说明。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 09:50:55