JavaScript 实例为函数的构造函数

JavaScript constructor whose instances are functions

我知道这可能是一个奇怪的问题,可能没有实际应用,但是是否有可能制作一个 JavaScript class 来构造像函数一样运行的实例?这就是我的意思:

function Factory() {}

// this may not be necessary, but I'll include it for sake of clarification
Factory.prototype = Object.create(Function.prototype);

var method = new Factory();

method(); // Objective: should not throw TypeError

进一步阐明objective:

如果我没理解错的话。对象构造函数需要return他的方法。然后你就可以像你描述的那样调用它了。

function Factory() {
    return this.method;
}

Factory.prototype.method = function() {
    console.log('from method');
};

var method = new Factory();

method();

http://jsfiddle.net/ydcoL3c2/