请原谅伪代码,我的实际文件要大得多:/在javascript类里面设置一个回调函数
我想从一个类中调用一个函数(带参数)。但是,该函数应该作为变量传递给类。
someObject = {
itWorked:function(answer){
alert(answer);
},
plugins:{
somePlugin:function(){
var callback;
this.doSomething = doSomething;
function setCallback(c){
callback = c;
}
function doSomething(){
var answer = "hello";
[callback](answer); // how do I call this?
}
}
},
widgets:{
something:function(){
var doIt = new someObject();
doIt.setCallback(someObject.itWorked()); // how do I send this?
doIt.doSomething();
}
}
}
那么我将如何传递itWorked()
的类? 如何在类中调用itWorked(answer)
函数以及如何将变量传递给if?
很好的回答,我只是发布了一个替代实现,但并没有什么错与这一个。 – Zoidberg
你还应该检查回调是否存在,并且是一个可执行的函数:'if(callback && typeof(callback)===“function”){}' –