有没有指定的方法来声明方法或函数以在JsDoc中返回void?目前,我认为这void
是默认返回值,并且必须专门提供其他返回值:
/**
* @return {Integer} The identifier for ...
*/
Answers:
我不认为您必须从JsDoc中的一组类型中进行选择...您可以使用所需的任何类型名称(花括号指示它是一种类型),因此您可以简单地执行以下操作:
@return {Void}
虽然,这对于JavaScript可能更正确:
@return {undefined}
@returns {void}
吗?
null
不一定与undefined
@return {Void}
在IntelliJ IDE中引发代码检查警告,@return {undefined}
而@return {void}
不会。
null
与undefined
。当某些内容为空时,它仍然被定义但没有值。未定义的,很好,未定义的:-)
void
运算符返回的值为undefined
。值类型的名称undefined
为Undefined
,即使typeof undefined
计算为"undefined"
。名称Void
在Ecmascript规范中未定义。
根据Google Closure Compiler的文档,如果未返回任何内容,则应省略@return批注。
如果没有返回值,请不要使用@return标记。
来源: https ://developers.google.com/closure/compiler/docs/js-for-compiler#tags
但是,进一步的文档也指出returnType和returnDescription是可选参数。
returnType-可选:返回值的类型。
returnDescription-可选:任何其他描述。
来源: https ://code.google.com/p/jsdoc-toolkit/wiki/TagReturns
您可以忽略返回注释,也可以不包含任何参数而将其包括在内。
undefined
因为这已经在Javascript中隐含了,并且可能会使阅读文档的人感到困惑。
undefined
迫使您自己声明意图,这在以后阅读时也很有用。只是为了澄清,我并不是说应该包含一个无用的JS语句,而是要始终包含一个JSDoc@returns
语句(我反对无用的代码,但不反对“无用的”注释)。
@returns {Array|undefined} - returns array if operation successful, otherwise returns undefined
查看他们使用的ESlint文档
@returns {void}
资料来源:http : //eslint.org/docs/rules/valid-jsdoc
由于我需要@returns
为每个函数都提供一个通过测试的功能,以便为某些项目推送代码,因此我需要这样做。
如果您需要大声说什么也没退,可以在自由格式说明中说出来。这对于阐明用户可能期望返回某些商品的情况很有用。当然,正确地命名函数和参数应该使预期的返回类型显而易见,但并非总是可能的。
/**
* This is a funny function. Returns nothing.
* @param {string} a joke.
*/
var funny = function (joke) {
console.log(joke);
};
@returns {void}
啊,有人已经提到它了:stackoverflow.com/a/45450508/470749