在Javascript中生成函数构造函数
如果可能的话,我如何创建一个函数构造函数?一个也有原型方法的构造函数 我知道如何创建一个对象构造函数在Javascript中生成函数构造函数,javascript,function,constructor,Javascript,Function,Constructor,如果可能的话,我如何创建一个函数构造函数?一个也有原型方法的构造函数 我知道如何创建一个对象构造函数 Function Thing(val) { this.prop1 = val } Thing.prototype.action = function()... 但要使用原型道具和方法创建新功能,我能想到的最好方法是,例如: Function Func(val) { var func = function(x) {return val*x}; func.val = val;
Function Thing(val) { this.prop1 = val }
Thing.prototype.action = function()...
但要使用原型道具和方法创建新功能,我能想到的最好方法是,例如:
Function Func(val) {
var func = function(x) {return val*x};
func.val = val;
func.__proto__ = proto;
return func;
}
const proto = {
product: function(x) { return this.val*x },
};
为了代码卫生,有没有更优雅的解决方案?试试
function Person(name) {
this.name = name;
}
// create a new instance
var person = new Person('codechimp');
console.log('person.constructor is ' + person.constructor);
试试看
Object.getPrototypeOf()
Object.getPrototypeOf()