async : false,表示同步,同步會等待執行完成
一般來說ajax表示異步請求,最直接的是可以實作頁面無重新整理,異步有一個好處就是不必等待執行,可以先往下執行js,這樣的好處在加載的時候無疑是可以避免資料請求的延遲
當然,在某些特殊的情況下也會要求ajax的資料與頁面同步,限制先後順序,比如需等待ajax執行完結果,後面的才能繼續執行的時候就需要設定同步屬性,true
之前就遇到過一個問題,就是在做ajax的請求的時候,定義了一個全局變量,在success裡面的全局變量接受傳回的值,然而經測試全局變量最後并沒有成功的擷取到值,準确的來說是在我需要用的時候值是undefined
原因在于即使使用了全局變量妄圖在ajax的success函數裡面被指派,也擷取不到,當目前的ajax表示異步的時候,會先執行下面的js代碼,繼而才是ajax的success回調成功
在面臨這類似的問題時候就需要設定同步請求的,這樣定義的全局變量能以成功的方式存到值并下後面使用!