コンストラクターを返す JavaScript 関数があります (以下のコード サンプルを参照)。jsdoc の @returns タグを使用してこれを文書化するにはどうすればよいですか。@returns {MyConstructor} を実行するのは正しくないようです。これは、コンストラクター自体ではなく、"MyConstructor" のインスタンスを返すことを意味するからです。
function MyConstructor() {
var self = this;
self.myFunction = function() {
return true;
};
self.getMyFunctionResult = function() {
return self.myFunction();
};
}
/**
* @returns {?} A constructor that will be instantiated
*/
function getConstructor() {
return MyConstructor;
}
var constructor = getConstructor();
var instance = new constructor();