好程序員web前端學習路線分享瞭解AJAX是什麼首先是服務器php
什麼是服務器:我們的頁面來源於服務器;實例(在phpnwo上面存放一個頁面),
我們把頁面放在互聯網的服務器上,就有了本身的網站了。前端
1.異步同步程序員
生活中的同步: web
生活中的異步:
ajax
在JavaScript語言中,同步和異步的概念恰好相反。json
這JavaScript中同步就是:你不執行完上面的代碼,那麼下面的代碼你就別執行;一步一步執行,這就是同步。後端
異步就是能夠一塊執行的代碼;瀏覽器
進程的概念安全
進程≠程序服務器
程序從開始到結束的一次執行過程叫作進程
一個進程當中,程序同時運行的多個分支,叫作線程
多線程異步執行,能夠提升程序的效率
AJAX的重要性
在許多數企業看來AJAX的使用熟練程度 === 你的工做經驗。
2.什麼是AJAX
ajax是先後端數據交互的重要手段
Ajax 全稱爲:「Asynchronous JavaScript and XML」(異步 JavaScript 和 XML), 它並非 JavaScript 的一種單一技術,而是利用了一系列交互式網頁應用相關的技術所形 成的結合體。使用 Ajax,咱們能夠無刷新狀態更新頁面,而且實現異步提交,提高了用戶體驗。
一.Ajax 概述
Ajax 這個概念是由 JesseJamesGarrett 在 2005 年發明的。它自己不是單一技術,是一串 技術的集合,主要有:
1.JavaScript,經過用戶或其餘與瀏覽器相關事件捕獲交互行爲
2.XMLHttpRequest 對象,經過這個對象能夠在不中斷其它瀏覽器任務的狀況下向服務 器發送請求;
3.服務器上的文件,以 XML、HTML 或 JSON 格式保存文本數據;
4.其它 JavaScript,解釋來自服務器的數據(好比 PHP 從 MySQL 獲取的數據)並將其 呈現到頁面上。
因爲 Ajax 包含衆多特性,優點與不足也很是明顯。優點主要如下幾點:
1.不須要插件支持(通常瀏覽器且默認開啓 JavaScript 便可);
2.用戶體驗極佳(不刷新頁面便可獲取可更新的數據);
3.提高 Web 程序的性能(在傳遞數據方面作到按需放鬆,沒必要總體提交);
4.減輕服務器和帶寬的負擔(將服務器的一些操做轉移到客戶端);
而 Ajax 的不足由如下幾點:
1.不一樣版本的瀏覽器度 XMLHttpRequest 對象支持度不足(好比 IE5 以前);
2.前進、後退的功能被破壞(由於 Ajax 永遠在當前頁,不會概率先後頁面);
3.搜索引擎的支持度不夠(由於搜索引擎爬蟲還不能理解 JS 引發變化數據的內容);
4.開發調試工具缺少(相對於其餘語言的工具集來講,JS 或 Ajax 調試開發少的可憐) 。
3.AJAX的使用
電話的接打順序:
1.首先要有一個電話;
2.撥號;
3.說話;
4.聽電話另外一邊的信息;
//有一個電話:建立請求對象;
1.var AJAX=new XMLHttpRequest( );
//撥號:設置請求參數;
2.AJAX.open('get','data/test.json',true);
第一個參數:POST||GET
POST和GET的區別
POST是發送數據,GET是接受數據;
PSOT發送數據的安全性較好,而GET較差;
POST發送數據不限制大小,而GET大小受限2~100k。
何時用GET和POST那:在數據獲取時用GET方式,在操做數據時應使用POST方式。
第三個參數:當該boolean值爲true時,服務器請求是異步進行的,也就是腳本執行send()方法後不等待
服務器的執行結果,而是繼續執行腳本代碼;
當該boolean值爲false時,服務器請求是同步進行的,也就是腳本執行send()方法後等待
服務器的執行結果的返回,若在等待過程當中超時,則再也不等待,繼續執行後面的腳本代碼!
{
if (ajax.readyState == 4 && ajax.status == 200)
{
func_succ(ajax.responseText);
}
else
{
//alert("ajax faild readyState:"+ajax.readyState+" status:"+ajax.status);
}
};
4.ajax.send(null);
ajax.readyStatus
0 - (未初始化)尚未調用send()方法
1 - (載入)已調用send()方法,正在發送請求
2 - (載入完成)send()方法執行完成,已經接收到所有響應內容
3 - (交互)正在解析響應內容
4 - (完成)響應內容解析完成,能夠在客戶端調用了