JSDoc 3文档构造函数/类参数

时间:2013-06-16 01:59:35

标签: javascript documentation jsdoc

如何记录作为参数传递的构造函数(函数)?

示例:

/** @class */
function A() {}

/**
 * @param {Function} aConstructor
 */
function createA(aClass) {
    return new aClass();
}

如您所见,我可以指定它是一个函数。但是,我无法指定该函数将创建哪个对象。有没有办法记录这个?

感谢。

2 个答案:

答案 0 :(得分:9)

谷歌及其闭包提出了{function(new:type)}作为类型描述。 我假设,人们可以使用这样的东西(我在AMD上使用它):

 /** @param {function(new:ClassOrInterfaceName)} aClass */

您可以在此处找到更多信息:http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml#JavaScript_Types

我希望,我的答案可以帮助某人)

答案 1 :(得分:0)

正如评论中所讨论的,我提交了一个请求,因为在我看来它并不支持该功能。使用instanceof的方法,“Function”在表示构造函数的对象实例时最接近。如上所述,@constructs@returns可以帮助您指示输出,但不能指示参数输入。