有人能告訴我爲什麼這個警報是空的嗎?關於JavaScript可變範圍的問題
var pending_dates = [];
$.getJSON('/ajax/event-json-output.php', function(data) {
$.each(data, function(key, val) {
pending_dates.push({'event_date' : val.event_date});
});
});
alert(pending_dates);
我無法理解這一點。我是否聲明pending_dates
是全局變量,可在每個循環內訪問?如何解決這個問題?
請注意,JSON輸出運行良好。如果我要在getJSON function
內聲明待定日期(並在該函數中發出警報),它將起作用,但我需要將數據存儲在getJSON
函數之外的數組中。
感謝您的貢獻。
編輯
感謝您的評論此代碼工作:
pending_dates = [];
$.getJSON('/ajax/event-json-output.php', function(data) {
$.each(data, function(key, val) {
pending_dates.push({'event_date' : val.event_date});
});
}).success(function() { alert(pending_dates); })
非常感謝你的貢獻!
感謝您的回答,但恐怕沒有用。任何其他想法? – maartenmachiels
變量定義和警報在相同的範圍內,所以這個建議與問題無關。 – jfriend00