在javascript类中设置回调函数

前端之家收集整理的这篇文章主要介绍了在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?

最佳答案
删除括号以将函数作为变量传递.

doIt.setCallback( someObject.itWorked );

然后,您可以像使用任何其他功能一样使用回调.

callback( answer );

猜你在找的JavaScript相关文章