5

コンストラクターを返す 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();
4

3 に答える 3