1
我有我必須在我的客戶端API上進行的以下循環。在循環的每次迭代中,我必須將從API調用返回的數據作爲對象添加到對象數組中,然後在循環結尾我需要顯示對象數組的內容。
由於JS代碼執行的性質(asynchronous
)顯示對象數組內容始終返回未定義,所以我想知道是否有人可以請幫我解決這個問題。謝謝。
var invoiceObj = {};
var invoiceObjArray = [];
for (var i=0; i< 5; i++)
{
//getAllInvoices returns a promise from $http.GET calls...
ClientInvoiceService.getAllInvoices(i).then(function(invoice){
invoiceObj = { invoiceNum: invoice.Result[0].id,
clientName: invoice.Result[0].clientName};
invoiceObjArray.push(invoiceObj);
}, function(status){
console.log(status);
});
}
console.log(invoiceObjArray[0]); //return undefined
console.log(invoiceObjArray[1]); //return undefined
非常感謝,$ q.all立即解決的問題:) – MChan
大,很高興有幫助! – thomaux