这甚至可能吗?
function foo() {
// do stuff
}
foo.prototype = {
// stuff...
bar: function() {
// do some things with this, where this refers to foo
},
bar.prototype: {
// set some definitions for bar to work with.
// Where does "this" go and what does it refer to?
}
}
答案 0 :(得分:0)
没有。你需要使用
function bar() {...}
bar.prototype = {...};
function foo() {...}
foo.prototype.bar = bar;
虽然这不起作用。没有理由将bar
构造函数放在foo
原型上,因为在使用new ((new foo()).bar)()
实例化条形对象时,将不会引用foo实例。你可以同样使用new foo.prototype.bar()
。