【发布时间】:2018-03-17 11:42:28
【问题描述】:
我有一个关于 foo 循环的问题。 为什么我的输出每次都是“C”?
function Dummy(){}
Dummy.prototype.a = function(){ console.log("Hello from A"); };
Dummy.prototype.b = function(){ console.log("Hello from B"); };
Dummy.prototype.c = function(){ console.log("Hello from C"); };
function hooks(obj){
for(method in obj){
original = obj[method];
obj[method] = function(){
console.log("Overrid %s", method);
original();
};
}
}
var instance = new Dummy();
hooks(instance);
instance.a();
instance.b();
instance.c();
我想创建一个可挂钩的中间件
【问题讨论】:
-
找到了解决方案,stackoverflow.com/a/7269313/5781499 但是谁能解释一下为什么?,谢谢
标签: javascript loops binding