我正在爲我的工作場所編寫一些遺留代碼,無法弄清楚如何處理返回的數據對象中的數據。該retrieveThis功能應該檢索對象數據:如何從此對象提取數據?
myObj.retrieveThis(new myObj.getThisData({num : 10, page : 1, sorting : "stampDescending"}), function() {myCallback(this);});
var myObj = function() {
var getThisData = {
// this function populates an array and returns it to the retrieveThis function
}
var theObject = {
retrieveThis: function(a, b) {
var OBJ = {};
// OBJ is populated by the data from var getThisData...I checked
setTimeout(function() {
b(OBJ);
}, 1000);
}
}
return theObject;
})();
我遇到麻煩數據(「theObject」)我的回調函數(或全部)。我通過this
到myCallBack函數(),其中myCallBack函數是:
function myCallback(obj) {
alert(Object.keys(obj));
}
警報框顯示按鍵,包括document
,jQuery
,和myObj
的列表。它看起來像來自OBJ的數據是從數組allTheData中填充的,但我似乎無法通過它返回(作爲返回對象;)來處理它。我在哪裏錯了?
注 - 我無法修改此遺留代碼。我需要處理「theObject」。
你怎麼定義它通過_this_? – Grundy
我把這個作爲參數傳遞給我的回調函數 –
似乎你提供了一個不正確的示例:你使用'myObj.getThisData'作爲構造函數,但是在你的'myObj'中看起來不是這個屬性,而且你也只是本地對象' getThisData' – Grundy