function delay(f, ms) {
return function() {
var savedThis = this;
var savedArgs = arguments;
setTimeout(function() {
f.apply(savedThis, savedArgs);
}, ms);
};
}
var my_obj = {
name : "vasya",
sayHi: function(){
alert(
this.name);
}
};
//var func = delay(function(){my_obj.sayHi()},2000);
var func = delay(my_obj.sayHi,2000); //undefined
func();
Ребят, вообще можно сделать как-то, чтобы можно было в функцию delay передавать не анонимную функцию с вызовом метода, а просто сам метод?