jQuery的 ajax 實現同步的原理

2021-10-23 13:12:57 字數 662 閱讀 4175

我們知道,jquery中ajax同步的實現方法很簡單:

如果想同步 async設定為false就可以(預設是true)

var html = $.

ajax()

.responsetext;

或者在全域性設定ajax屬性

$.

ajaxsetup()

;

再用post,get就是同步的了

但了解了js的執行機制(↓↓↓↓↓)後,知道了js是主線程同步執行,非同步任務放入任務佇列,輪詢觸發。

jquery的同步請求是在上面**傳送請求,下面**等待至響應回來後,才執行**。

這與js的執行機制似乎相矛盾,但jquery又是js寫的。。。

由此產生了問題:jqueryajax是實現同步請求的呢?

ajax的同步 非同步 jquery同步

同步請求將鎖住瀏覽器,使用者其它操作必須等待請求完成才可以執行。看下邊的js function 如果其它函式呼叫這個函式的時候我們會發現先alert last 之後再 alert msg msg 不是順序執行的,這是因為jquery ajax預設的是非同步的不等ajax執行完就繼續執行其餘 這樣的話...

jquery的ajax同步和非同步

之前一直在寫jquery 的時候遇到ajax載入資料都需要考慮 執行順序問題。最近的專案用了到ajax同步。這個同步的意思是當js 載入到當前ajax的時候會把頁面裡所有的 停止載入,頁面出去假死狀態,當這個ajax執行完畢後才會繼續執行其他 頁面假死狀態解除。而非同步則這個ajax 執行中的時候其...

jquery的ajax同步和非同步

之前一直在寫jquery 的時候遇到ajax載入資料都需要考慮 執行順序問題。最近的專案用了到ajax同步。這個同步的意思是當js 載入到當前ajax的時候會把頁面裡所有的 停止載入,頁面出去假死狀態,當這個ajax執行完畢後才會繼續執行其他 頁面假死狀態解除。而非同步則這個ajax 執行中的時候其...