回顧ajax

DingDeSheng發表於2018-03-31

  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"]