问题描述
在 Javascript 中,我有两个名称相同但参数不同的函数。代码工作正常,但当我尝试执行 jsdoc file.js
或 jsdoc2md file.js
时,我收到错误 Identifier 'info' has already been declared
。
对此有什么解决方案?
/**
* Emits a log message with the added message. Level: 'info' (Same as log)
* @function
* @param {String} message The message.
*/
async function info(message) {
winstonLogger.log('info',message);
}
/**
* Emits a log message with the added message and title. Level: 'info'
*
* Example: Thu,19 Nov 2020 13:08:54 GMT | title | message |
* @function
* @param {String} message The message.
* @param {String} title A title that will appear in the first seaction as an event definer.
*/
async function info(message,title) {
winstonLogger.log('info',message,{title});
}
解决方法
虽然技术上有效,但这个 Javascript 应该被视为损坏,因为第二个 info
函数覆盖了第一个。这不是 jsdoc 或 jsdoc2md 的错误。