在 `myfun` 中發起 AJAX,成功回調裡賦值給 `images` 變量,但在外層代碼(同步執行)中無法使用 `images`,因為 AJAX 預設異步。
$.ajax({
async: false, // 同步
url: "...",
success: function(data) {
images = data;
}
});
// 這裡可直接用 images
function myfun(callback) {
$.ajax({
url: "...",
success: function(data) {
callback(data); // 將數據傳給回調
}
});
}
// 使用
myfun(function(images) {
// 這裡處理 images
$(".gallery").html(render(images));
});
或用 `$.ajax().then(...)` / `async/await`(配合 `fetch`)。
**異步非阻塞**:發起請求後主線程繼續執行,回調稍後執行。外層代碼不可依賴異步結果,必須將後續邏輯放入回調/then 中。