什么是AJAX
AJAX = Asynchronous Javascript And XML (異步 JavaScript 和 XML。
AJAX是一種方法
AJAX不是新的編程語言,而是一種技術方案,用現有的 JavaScript 巧妙的實現目的。
AJAX的作用
AJAX 方法用來前后端的數據交互,向服務器請求額外的數據,在不重新加載整個頁面的情況下。
AJAX 的優缺點
優點:
- 更新數據而不需要刷新頁面: 它能在不刷新整個頁面的前提下與服務器通信維護數據,由于ajax是按照需求請求數據,避免發送那些沒有改變的數據。
- 異步通信: 它與服務器使用異步的方式通信,不會打斷用戶的操作(卡死頁面)。
- 前后端負載平衡: 可以將后端服務器的一些工作轉移給客戶端,利用客戶端限制的能力來處理,減輕了服務器的負擔。
- 數據與呈現分離: 利于分工,降低前后耦合。
缺點:
- 瀏覽器歷史記錄的遺失: 在使用AJAX對頁面進行改變后,由于并沒有刷新頁面,沒有改變頁面的訪問歷史,當用戶想要回到上一個狀態時,無法使用瀏覽器提供的后退。
- AJAX的安全問題: AJAX的出現就像建立起了一直通服務器的另一條通道,容易遭受到一些攻擊。
AJAX 與 form 交互的區別
AJAX 是前端向后端發出數據請求,后端返回需要的數據,前端用這些數據改寫HTML頁面,頁面不會刷新。
form 是前端向后端發出數據請求,后端把需要的數據填入HTML模板(.ejs文件)創建新的HTML,再把新的HTML發回給前端,這樣前端的頁面就會做一次刷新。
做個比喻:AJAX 就是上門維修,form 就是返廠維修