我知道有很多關於回調,範圍和關閉的問題。如果這是重複的,我提前道歉。迭代期間的回調範圍
我有一個每個循環調用一個函數,執行多個異步操作,然後發出回調。當回調觸發時,我正在失去範圍(顯然)。我所做的是將循環中的項目傳遞給函數,然後在回調函數中將其返回,以便獲得我需要的範圍。這是做這件事的最好方法嗎?我不是在尋找過於複雜的東西。我只是想確保我不會遇到任何「陷阱」。
function doSomething(varA, varB, self, callback) {
// do a lot of ajax stuff
callback(varA + varB, self);
}
$.each($('.selected'), function(i, item) {
doSomething('a', 'b', item, function(retVal, self) {
// process retVal and self
}
}
也就是說比我有更好的語法。 – Jay