Ajax,全稱 Asynchronous Javascript and XML,是一個動態WEB應用的開發技術,它的出現豐富了使用者的體驗。甚至用Ajax開發的WEB應用可以達到傳統型應用程式的體驗。當然,和其他技術一樣Ajax同樣也有其自身的優點和缺點。
使用Ajax的優點
1. 提升使用者體驗
提升使用者體驗這是使用Ajax最重要的原因之一。Ajax允許Web頁面向服務端請求少量的資料來達到連續不斷更新,使用這種方法就可以只重新整理部分頁面而不用重新載入整個頁面。傳統的WEB頁面是通過重新載入整個頁面來達到更新頁面資料的效果的,即使需要更新的資料很少。所以說Ajax的使用提升了瀏覽器的效能並且通過這種響應式的使用者體驗大大提升了瀏覽的速度。
2. 提高工作效率
Ajax類庫提供了很多的物件導向模式的輔助函數,這些類庫大大提高了開發速度減少在開發過程中碰到的障礙。此外在很多成熟的架構中都有自己的資料層、業務層還有視圖層,所以Ajax只需要一個特定的Ajax服務和在用戶端的一些改進就可以實現想要的功能。這種方式的架構減少了在程式部署上話費的時間,並且提高了開發人員的工作效率。
3. 減少頻寬的使用並且提升了訪問速度
Ajax是使用用戶端指令碼和Web服務端進行互動,使用javascript來交換資料。使用Ajax可以減輕網路負載、減少頻寬的使用並且只請求需要的資料,這些方面都是加快回應時間必要的因素。回應時間縮短了,效能和速度自然也就有很大的提高了。
4. 很好的相容性
由於Ajax是用戶端技術,所以對於常用的服務端程式設計語言來說,都可以實現Ajax服務端,比如:PHP、Java、ASP.NET、node.js等等。並且幾乎所有的瀏覽器都支援Ajax。
5. 支援非同步處理
通過使用XmlHttpRequest非同步擷取資料是Ajax的主要特點。在請求未被執行完之前,程式是可以繼續向下執行的,在請求返回之後再去執行相應的操作。這樣的機制正是提升Web效能的最主要的原因。
6. 使頁面內容切換更簡單
Ajax使得不同內容切換變得更加簡單直觀,使用者不需要再使用瀏覽器上傳統形式的回退和前進按鈕來實現頁面的前進和後退功能了。
使用Ajax的缺點
1. 瀏覽器之間的不相容性
Ajax對於Javascript有很大的依賴性,因此在不同的瀏覽器上面的實現方式也是有所不同的。這就表明如果想跨瀏覽器實現Ajax那就必須對其進行相應的處理。如果有的瀏覽器不支援Javascript抑或是禁止了Javascript的此選項,那此瀏覽器就不支援Ajax,因此先前寫的Ajax的功能在這類瀏覽器上就沒有辦法實現。正是由於Ajax依賴於Javascript的這一特性,所以Ajax不適合應用於手機端的應用。
2. 不安全
由於網頁是很難調試的,因此隨著你的代碼量的增加,你的網頁面臨著越來越嚴重的威脅。
3. 增加了Web伺服器的負載量
如果你在網頁中增加了每隔幾秒就自動向伺服器請求更新資料的功能,那你的伺服器的負載就會越來越大,嚴重的可能還會使伺服器崩潰。
沒錯每一門技術既然有其優於其他同類技術的優點,那肯定也會存在相應的缺點,至於使用與否那取決於我們實際的項目需要,在實際工作中去衡量。