標籤:檔案 size 一件事 單引號 object 標記法 發送 函數 java
一、JSON
JSON是JavaScript Object Notation 的首字母縮寫,單詞的意思是javascript對象標記法,這裡說的json指的是類似於javascript對象的一種資料格式,目前這種資料格式比較流行,逐漸替換掉了傳統的xml資料格式。
1、javascript對象字面量
2、json格式的資料
特別注意:與json對象不同的是,json資料格式的屬性名稱需要用雙引號引起來,用單引號或者不用引號會導致讀取資料錯誤。
json的另外一個資料格式是數組,和javascript中的數組字面量相同。
二、ajax與jsonp
ajax技術的目的是讓javascript發送http請求,與後台通訊,擷取資料和資訊。ajax技術的原理是執行個體化xmlhttp對象,使用此對象與後台通訊。ajax通訊的過程不會影響後續javascript的執行,從而實現非同步。
1、同步和非同步
現實生活中,同步指的是同時做幾件事情,非同步指的是做完一件事再做另外一件事,程式中的同步和非同步是把現實生活中的概念對換,也就是程式中的非同步指的是現實生活中的同步,程式中的同步指的是現實生活中的非同步。
2、局部重新整理和無重新整理
ajax可以實現局部重新整理,也叫作無重新整理,無重新整理指的是整個頁面不重新整理,只是局部重新整理,ajax可以自己發送http請求,不用通過瀏覽器的地址欄,所以頁面整體不會重新整理,ajax擷取到後台資料,更新頁面顯示資料的部分,就做到了頁面局部重新整理。
3、同源策略
ajax請求的頁面或資源只能是同一個域下面的資源,不能是其他域的資源,這是在設計ajax時基於安全的考慮。特徵報錯提示:
XMLHttpRequest cannot load https://www.baidu.com/. No
‘Access-Control-Allow-Origin‘ header is present on the requested resource.
Origin ‘null‘ is therefore not allowed access.
4、$.ajax使用方法
常用參數:
1、url 請求地址
2、type 請求方式,預設是‘GET‘,常用的還有‘POST‘
3、dataType 設定返回的資料格式,常用的是‘json‘格式,也可以設定為‘html‘
4、data 設定發送給伺服器的資料
5、success 佈建要求成功後的回呼函數
新的寫法(推薦):
$.ajax({
url:"介面",
type:"get/post",
dataType:"json",
data:{"aa":1},
})
.done(function(data){
......
})
.fail:function(){
alert("伺服器逾時,請重試!");
}
三、jsonp
ajax只能請求同一個網域名稱下的資料或資源,有時候跨域請求資料,就需要用到jsonp技術,jsonp可以跨域請求資料,它的原理主要是利用了script標籤可以跨域連結資源的特性。
jsonp的原理如下:
<script>
function aa(dat){
alert(data.name);
}
</script>
<script src="../js/data.js"></script>
頁面上定義一個函數,引用一個外部js檔案,外部js檔案的地址可以是不同域的地址,外部js檔案的內容如下:
aa({"name":"tom","age":18});
外部js檔案調用頁面上定義的函數,通過參數把資料傳進去。
jsonp寫法:
$.ajax({
url:"介面",
type:"get/post",
dataType:"jsonp",
data:{"aa":1},
})
.done(function(data){
......
})
.fail:function(){
alert("伺服器逾時,請重試!");
}
今天就先總結到這吧.......
ajax知識點總結