我有类似的东西:
// original function
Foo = function(params) {
do foo...
}
Foo.prototype.alert = function() {
alert('foo');
}
现在我想干涉:
Bar = Foo;
Foo = function(params) {
do bar...
return Foo(params);
}
或JQuery方式:
(function() {
var proxied = Foo;
Foo = function() {
do bar...
return proxied.apply(this, arguments);
};
})();
现在的问题是Foo缺少所有的原型方法。知道我怎么能做这个工作吗?
答案 0 :(得分:2)
jQuery.extend(Foo.prototype, proxied.prototype);
甚至:
Foo.prototype = proxied.prototype;