0
可能重複道:
Javascript closure inside loops - simple practical example保持的當前迭代「的」變量在封閉
for (i=0; i<N; i++) {
$.get("script"+ i +".jsp", function() {
//I want to use i here
//but by the time the ajax request comes back i==N, but I want the old i
})
}
所以我得到這個代碼,我在想,如果有一個更好的辦法來做到這一點,而不是我的迴應。 這不是關於jQuery的ajax調用,我知道有辦法通過事件對象傳遞「我」,我想要一個比我想出的更好的通用解決方案。
好了,這是相當瑣碎的問題,以及問題的答案。無論如何,使用封閉裝置在這裏是一顆銀色的子彈。 – VisioN
另一種方法是使用'.bind',但只有在您不依賴於'this'被調用代碼設置爲特定值時纔有效。您始終可以使用函數發生器並將值傳遞給它(而不是使用函數表達式)。 –