我有一個函數,它有一個$ .each循環遍歷一個對象的鍵並執行一些操作。在這個循環中,我調用了一個函數,這個函數反過來調用服務器來獲取一些數據,並在回調中對它進行處理。這些調用是異步的,因此$ .each不會等待數據到來,並且回調會執行它應該保持迭代的操作。我如何使$ .each循環等待,直到我完成我的操作,然後繼續。
$.each(messages,function(key) {
//do something
if(some Condition) {
getfromserver(token,myCallback); }
//do something
});
function myCallback(data)
{
//do something with data
}
那麼你最好不要使用各... – epascarello
@epascarello會用「爲」解決這個問題? – vijar
'每個'都不是爲你想要的而構建的,但是作爲一個複製鏈接的問題上提到的函數都是你所需要的。而且,當我們進入下一個版本的Javascript時,[這種機制將成爲語言的本地部分](http://www.html5rocks.com/en/tutorials/es6/promises/) –