Ajax 即“Asynchronous Javascript And XML”(非同步 JavaScript 和 XML),是指一種建立互動網頁應用的網頁開發技術。
一. Ajax
ajax技術的目的是讓javascript傳送http請求,與後臺通訊,獲取資料和資訊。ajax技術的原理是例項化xmlhttp物件,使用此物件與後臺通訊。ajax通訊的過程不會影響後續javascript的執行,從而實現非同步。
二. 同步和非同步的理解
現實生活中,同步指的是同時做幾件事情,非同步指的是做完一件事後再做另外一件事,程式中的同步和非同步是把現實生活中的概念對調,也就是程式中的非同步指的是現實生活中的同步,程式中的同步指的是現實生活中的非同步。
三. ajax區域性重新整理
ajax可以實現區域性重新整理,也叫做無重新整理,無重新整理指的是整個頁面不重新整理,只是區域性重新整理,ajax可以自己傳送http請求,不用通過瀏覽器的位址列,所以頁面整體不會重新整理,ajax獲取到後臺資料,更新頁面顯示資料的部分,就做到了頁面區域性重新整理。
四. 同源策略
在設計ajax時基於安全的考慮,ajax請求的頁面或資源只能是同一個域下面的資源,不能是其他域的資源。
五. $ajax使用方法(常用引數)
1、url 請求地址
2、type 請求方式,預設是`GET`,常用的還有`POST`
3、dataType 設定返回的資料格式,常用的是`json`格式,也可以設定為`html`
4、data 設定傳送給伺服器的資料
5、success 設定請求成功後的回撥函式
6、error 設定請求失敗後的回撥函式
7、async 設定是否非同步,預設值是`true`,表示非同步
$.ajax({ url:`js/data.json`, type:`GET`, dataType:`json`, data:{`ding`:1} }) .done(function(data){ alert(data.name) }) .fail(function(){ alert(`伺服器超時!`) }); // data.json裡面的資料: {`name`:`ding`,`age`:18}
六. 關於json
json是 JavaScript Object Notation 的首字母縮寫,單詞的意思是javascript物件表示法,這裡說的json指的是類似於javascript物件的一種資料格式。
json格式的資料:
{ `Javascript`:`json`, `Jquery`:`ajax` }
注意:json資料格式的屬性名稱和字串值需要用雙引號引起來,用單引號或者不用引號會導致讀取資料錯誤。
json的另外一個資料格式是陣列,和javascript中的陣列字面量相同。
["ding",18,"programmer"]