[英]How to get value returned by Callback function?
這是我正在嘗試的代碼:
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;
},
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.