亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ajax同步和異步的區別有哪些

發布時間:2022-01-14 09:38:21 來源:億速云 閱讀:199 作者:iii 欄目:web開發

這篇文章主要講解了“ajax同步和異步的區別有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“ajax同步和異步的區別有哪些”吧!

區別:1、同步中一個線程要等待上一個線程執行完才能開始執行,而異步中一個線程在執行中,下一個線程不必等待它執行完就可以開始執行;2、同步是單線程操作,而異步是多線程操作;3、異步的效率要高于同步。

本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

ajax異步請求:

異步請求就當發出請求的同時,瀏覽器可以繼續做任何事,Ajax發送請求并不會影響頁面的加載與用戶的操作,相當于是在兩條線上,各走各的,互不影響。一般默認值為true。異步請求可以完全不影響用戶的體驗效果,無論請求的時間長或者短,用戶都在專心的操作頁面的其他內容,并不會有等待的感覺。

比如:

$.ajax({ 
     type:"POST",
     url:"Venue.aspx?act=init",
      dataType:"html",
     success:function(result){  //function1()
       f1();
       f2(); 
    }
     failure:function (result) { 
      alert('Failed'); 
     },
 }
 function2();

說明:上述代碼中,當ajax塊發出請求后,他將停留function1(),等待server端的返回,但同時(在這個等待過程中),前臺會去執行function2()。

ajax同步請求:

同步請求即是當前發出請求后,瀏覽器什么都不能做,必須得等到請求完成返回數據之后,才會執行后續的代碼,相當于是排隊,也就是說,當JS代碼加載到當前ajax的時候會把頁面里所有的代碼停止加載,頁面處于一個假死狀態,當這個ajax執行完畢后才會繼續運行其他代碼頁面解除假死狀態(即當ajax返回數據后,才執行后面的function)。

比如:

$.ajax({ 
     type:"POST",
     url:"Venue.aspx?act=init",
     dataType:"html",
     async: false,    success:function(result){  //function1()
       f1();
       f2();
     }
    failure:function (result) { 
      alert('Failed'); 
     },
 }
 function2();

說明:上述代碼中,當把asyn設為false時,這時ajax的請求時同步的,也就是說,這個時候ajax塊發出請求后,他會等待在function1()這個地方,不會去執行function2(),直到function1()部分執行完畢。

看完了對于ajax同步與異步請求的意思后,我們就來看看ajax同步請求與異步請求的區別。

ajax同步請求與異步請求的區別:

同步是指一個線程要等待上一個線程執行完才能開始執行,同步可以看做是一個單線程操作,只要客戶端請求了,在服務器沒有反饋信息之前是一個線程阻塞狀態。

異步是一個線程在執行中,下一個線程不必等待它執行完就可以開始執行。異步肯定是個多線程。在客戶端請求時,可以執行其他線程,并且在把這個線程存放在他的隊列里面,有序的執行。

異步的效率要高于同步。如果數據在線程間共享,那么必須使用同步!

異步模式下:

當我們使用AJAX發送完請求后,可能還有代碼需要執行。這個時候可能由于種種原因導致服務器還沒有響應我們的請求,但是因為我們采用了異步執行方式,所有包含AJAX請求代碼的函數中的剩余代碼將繼續執行。如果我們是將請求結果交由另外一個JS函數去處理的,那么,這個時候就好比兩條線程同時執行一樣。

同步模式下:

當我們使用AJAX發送完請求后,后續還有代碼需要執行,我們同樣將服務器響應交由另一個JS函數去處理,但是這時的代碼執行情況是:在服務器沒有響應或者處理響應結果的JS函數還沒有處理完成return時,包含請求代碼的函數的剩余代碼是不能夠執行的。就好比單線程一樣,請求發出后就進入阻塞狀態,知道接觸阻塞余下的代碼才會繼續執行。

感謝各位的閱讀,以上就是“ajax同步和異步的區別有哪些”的內容了,經過本文的學習后,相信大家對ajax同步和異步的區別有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

容城县| 辽阳县| 饶平县| 密山市| 维西| 永平县| 涞水县| 南丹县| 苍南县| 西贡区| 鄢陵县| 土默特左旗| 鹤庆县| 玉龙| 伊春市| 金寨县| 宜城市| 上林县| 喜德县| 临高县| 云和县| 灯塔市| 康保县| 平乡县| 方正县| 本溪市| 玛曲县| 丰都县| 丽水市| 景谷| 韶山市| 芜湖市| 湘西| 云安县| 卢氏县| 沂源县| 阜新市| 玉树县| 富锦市| 忻城县| 威远县|