我讀過關於JavaScript關閉的內容,我以爲我明白了,但顯然我沒有。爲什麼ajax調用中的閉包可以訪問外部範圍?
成功功能在請求成功時被調用。這意味着,當封閉(function() { return obj; })();
執行範圍內成功功能,是不function (evt) {...}
了,所以它是如何仍然可以訪問OBJ?
如何在這個例子中,堵口
EDITED(有OBJ前VAR)
function (evt) {
var obj = evt.data.obj,
$.ajax({
type: "POST",
url: url,
data: data,
success: function() {
var o = (function() {
return obj;
})();
}
});
}
抱歉誤導,但在** obj **變量之前有** var **關鍵字 – theateist 2011-05-03 12:41:58