Json梯嗽、ajax齿尽、jsonp

json是 JavaScript Object Notation 的首字母縮寫,單詞的意思是javascript對(duì)象表示法灯节,這里說的json指的是類似于javascript對(duì)象的一種數(shù)據(jù)格式循头,目前這種數(shù)據(jù)格式比較流行,逐漸替換掉了傳統(tǒng)的xml數(shù)據(jù)格式炎疆。

  • javascript對(duì)象字面量:

var tom = {
name:'tom',
age:18
}

  • json格式的數(shù)據(jù):

{
"name":'tom',
"age":18
}
與json對(duì)象不同的是卡骂,json數(shù)據(jù)格式的屬性名稱需要用雙引號(hào)引起來,用單引號(hào)或者不用引號(hào)會(huì)導(dǎo)致讀取數(shù)據(jù)錯(cuò)誤形入。

  • json的另外一個(gè)數(shù)據(jù)格式是數(shù)組偿警,和javascript中的數(shù)組字面量相同。

['tom',18,'programmer']

ajax與jsonp

ajax技術(shù)的目的是讓javascript發(fā)送http請(qǐng)求唯笙,與后臺(tái)通信螟蒸,獲取數(shù)據(jù)和信息。ajax技術(shù)的原理是實(shí)例化xmlhttp對(duì)象崩掘,使用此對(duì)象與后臺(tái)通信七嫌。ajax通信的過程不會(huì)影響后續(xù)javascript的執(zhí)行,從而實(shí)現(xiàn)異步苞慢。

  • 同步和異步

現(xiàn)實(shí)生活中诵原,同步指的是同時(shí)做幾件事情,異步指的是做完一件事后再做另外一件事挽放,程序中的同步和異步是把現(xiàn)實(shí)生活中的概念對(duì)調(diào)绍赛,也就是程序中的異步指的是現(xiàn)實(shí)生活中的同步,程序中的同步指的是現(xiàn)實(shí)生活中的異步辑畦。

  • 局部刷新和無刷新

ajax可以實(shí)現(xiàn)局部刷新吗蚌,也叫做無刷新,無刷新指的是整個(gè)頁面不刷新纯出,只是局部刷新蚯妇,ajax可以自己發(fā)送http請(qǐng)求,不用通過瀏覽器的地址欄暂筝,所以頁面整體不會(huì)刷新箩言,ajax獲取到后臺(tái)數(shù)據(jù),更新頁面顯示數(shù)據(jù)的部分焕襟,就做到了頁面局部刷新陨收。

  • 同源策略

ajax請(qǐng)求的頁面或資源只能是同一個(gè)域下面的資源,不能是其他域的資源鸵赖,這是在設(shè)計(jì)ajax時(shí)基于安全的考慮务漩。特征報(bào)錯(cuò)提示:

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.

  • $.ajax使用方法
    常用參數(shù):
    1拄衰、url 請(qǐng)求地址
    2、type 請(qǐng)求方式菲饼,默認(rèn)是'GET'肾砂,常用的還有'POST'
    3列赎、dataType 設(shè)置返回的數(shù)據(jù)格式宏悦,常用的是'json'格式,也可以設(shè)置為'html'
    4包吝、data 設(shè)置發(fā)送給服務(wù)器的數(shù)據(jù)
    5饼煞、success 設(shè)置請(qǐng)求成功后的回調(diào)函數(shù)
    6、error 設(shè)置請(qǐng)求失敗后的回調(diào)函數(shù)
    7诗越、async 設(shè)置是否異步砖瞧,默認(rèn)值是'true',表示異步

  • 以前的寫法:

$.ajax({
url: 'js/user.json',
type: 'GET',
dataType: 'json',
data:{'aa':1}
success:function(data){
    ......
},
error:function(){
    alert('服務(wù)器超時(shí)嚷狞,請(qǐng)重試块促!');
}
});

  • 新的寫法(推薦):
$.ajax({
url: 'js/user.json',
type: 'GET',
dataType: 'json',
data:{'aa':1}
})
.done(function(data) {
......
})
 .fail(function() {
alert('服務(wù)器超時(shí),請(qǐng)重試床未!');
});

  • jsonp

ajax只能請(qǐng)求同一個(gè)域下的數(shù)據(jù)或資源竭翠,有時(shí)候需要跨域請(qǐng)求數(shù)據(jù),就需要用到j(luò)sonp技術(shù)薇搁,jsonp可以跨域請(qǐng)求數(shù)據(jù)斋扰,它的原理主要是利用了script標(biāo)簽可以跨域鏈接資源的特性。

jsonp的原理如下:

<script type="text/javascript">
function aa(dat){
    alert(dat.name);
}
</script>
<script type="text/javascript" src="....../js/data.js"></script>

頁面上定義一個(gè)函數(shù)啃洋,引用一個(gè)外部js文件传货,外部js文件的地址可以是不同域的地址,外部js文件的內(nèi)容如下:

aa({"name":"tom","age":18});
外部js文件調(diào)用頁面上定義的函數(shù)宏娄,通過參數(shù)把數(shù)據(jù)傳進(jìn)去问裕。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市孵坚,隨后出現(xiàn)的幾起案子僻澎,更是在濱河造成了極大的恐慌,老刑警劉巖十饥,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件窟勃,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡逗堵,警方通過查閱死者的電腦和手機(jī)秉氧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蜒秤,“玉大人汁咏,你說我怎么就攤上這事亚斋。” “怎么了攘滩?”我有些...
    開封第一講書人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵帅刊,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我漂问,道長(zhǎng)赖瞒,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任蚤假,我火速辦了婚禮栏饮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘磷仰。我一直安慰自己袍嬉,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開白布灶平。 她就那樣靜靜地躺著伺通,像睡著了一般。 火紅的嫁衣襯著肌膚如雪逢享。 梳的紋絲不亂的頭發(fā)上罐监,一...
    開封第一講書人閱讀 51,301評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音拼苍,去河邊找鬼笑诅。 笑死,一個(gè)胖子當(dāng)著我的面吹牛疮鲫,可吹牛的內(nèi)容都是我干的吆你。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼俊犯,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼妇多!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起燕侠,我...
    開封第一講書人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤者祖,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后绢彤,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體七问,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年茫舶,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了械巡。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖讥耗,靈堂內(nèi)的尸體忽然破棺而出有勾,到底是詐尸還是另有隱情,我是刑警寧澤古程,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布蔼卡,位于F島的核電站,受9級(jí)特大地震影響挣磨,放射性物質(zhì)發(fā)生泄漏雇逞。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一趋急、第九天 我趴在偏房一處隱蔽的房頂上張望喝峦。 院中可真熱鬧势誊,春花似錦呜达、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至挤忙,卻和暖如春霜威,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背册烈。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工戈泼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人赏僧。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓大猛,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親淀零。 傳聞我的和親對(duì)象是個(gè)殘疾皇子挽绩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容