Javascript 如何获取回调函数返回的值?
以下是我正在尝试的代码:Javascript 如何获取回调函数返回的值?,javascript,function,callback,return-value,Javascript,Function,Callback,Return Value,以下是我正在尝试的代码: initData:function(period) { this.getLoadObject('0',url, this.callbackFunction); }, 我希望从callBackFunction接收返回值,我希望通过initData返回该值 有人能帮我吗,我对JS不太精通。 我尝试了类似的方法,但没有得到帮助。实际上,回调函数很可能是异步调用的,也就是在调用initData返回之后 但是,如果它是同步的,则可以执行以下操作: initDat
initData:function(period)
{
this.getLoadObject('0',url, this.callbackFunction);
},
我希望从callBackFunction接收返回值,我希望通过initData
返回该值
有人能帮我吗,我对JS不太精通。
我尝试了类似的方法,但没有得到帮助。实际上,回调函数很可能是异步调用的,也就是在调用initData返回之后 但是,如果它是同步的,则可以执行以下操作:
initData:function(period)
{
var that = this;
var result;
this.getLoadObject('0',url, function() {
result = that.callbackFunction(arguments));
});
return result;
},
尽管无法从代码片段中分辨,但回调函数似乎将被异步调用。如果是这种情况,则需要在回调函数本身中设置要由initData填充的变量 您还可以包装回调函数:
var context = this;
this.getLoadObject('0',url, function() {
var returnedval = context.callbackFunction.apply(context,arguments);
context.SomeFuctionToUseValue(returnedval);
});
我认为可以在函数外部使用变量,这样就可以在回调函数内部和外部访问它
var result = false;
initData:function(period)
{
this.getLoadObject('0',url, this.callbackFunction);
//inside the callback you can modify the "result" then
return result;
},
将回调作为参数传递给initData