是否有支持参数转换和“多态性”的JavaScript文档生成器?

您的JavaScript库越“神奇”,使用文档生成器的可能性就越小。

有没有人知道一个文档生成器,允许参数移动/参数多态性function的文档?

function example(required, optional, callback) { if(typeof optional === 'function' && typeof callback === 'undefined') { callback = optional; optional = 'DEFAULT VALUE'; } // do work here } 

这可以被称为如下:

 example(required, optional, function() { // do work }); example(required, function() { // do work }); 

任何build议表示赞赏,除“使用通用评论/文档块”。

这是相关的,但不是重复的: 在JSDOC中logginggenericstypes参数

       

网上收集的解决方案 "是否有支持参数转换和“多态性”的JavaScript文档生成器?"

它看起来像JSDoc支持用@name fun @name fun^2 重载函数我认为下面清楚地传达了你的意图

 /** @name example @function @param {string} required @param {Function} callback */ /** @name example^2 @function @param {string} required @param {string} [optional='DEFAULT VALUE'] @param {Function} callback */ function example() { if(typeof optional === 'function' && typeof callback === 'undefined') { callback = optional; optional = 'DEFAULT VALUE'; } // do work here } 

但是,在你的情况下,我认为这将是最简单的,如果你只是把你的可选参数切换到最后,那么你将不需要重载

 /** * @param required * @param {Function} callback * @param {String} [optional='DEFAULT VALUE'] */ function example(required, callback, optional) { if (typeof optional === 'undefined') { optional = 'DEFAULT VALUE'; } // do work here }