學(xué)習(xí)啦 > 學(xué)習(xí)方法 > 通用學(xué)習(xí)方法 > 學(xué)習(xí)經(jīng)驗(yàn) > 如何才能系統(tǒng)有效的學(xué)習(xí)ajax

如何才能系統(tǒng)有效的學(xué)習(xí)ajax

時(shí)間: 欣怡1112 分享

如何才能系統(tǒng)有效的學(xué)習(xí)ajax

  AJAX 是一種用于創(chuàng)建快速動(dòng)態(tài)網(wǎng)頁(yè)的技術(shù)。很多人想要學(xué)習(xí)AJAX,那么如何才能系統(tǒng)有效的學(xué)習(xí)ajax?以下是學(xué)習(xí)啦小編分享給大家的有效的學(xué)習(xí)ajax的方法,希望可以幫到你!

  有效的學(xué)習(xí)ajax的方法一

  AJAX 簡(jiǎn)介

  AJAX即“Asynchronous JavaScript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)。

  通過(guò)在后臺(tái)與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁(yè)實(shí)現(xiàn)異步更新。這意味著可以在不重新加載整個(gè)網(wǎng)頁(yè)的情況下,對(duì)網(wǎng)頁(yè)的某部分進(jìn)行更新。傳統(tǒng)的網(wǎng)頁(yè)(不使用 AJAX)如果需要更新內(nèi)容,必須重載整個(gè)網(wǎng)頁(yè)頁(yè)面。AJAX 技術(shù)的廣泛使用,對(duì)B/S模式應(yīng)用慢慢取代了桌面軟件起到了很大的推動(dòng)作用。

  有效的學(xué)習(xí)ajax的方法二

  同步、異步傳輸?shù)膮^(qū)別

  異步傳輸是面向字符的傳輸,它的單位是字符;而同步傳輸是面向比特的傳輸,它的單位是楨,它傳輸?shù)臅r(shí)候要求接受方和發(fā)送方的時(shí)鐘是保持一致的。

  異步傳輸

  具體來(lái)說(shuō),異步傳輸是將比特分成小組來(lái)進(jìn)行傳送。一般每個(gè)小組是一個(gè)8位字符,在每個(gè)小組的頭部和尾部都有一個(gè)開(kāi)始位和一個(gè)停止位,它在傳送過(guò)程中接收方和發(fā)送方的時(shí)鐘不要求一致,也就是說(shuō),發(fā)送方可以在任何時(shí)刻發(fā)送這些小組,而接收方并不知道它什么時(shí)候到達(dá)。

  一個(gè)最明顯的例子就是計(jì)算機(jī)鍵盤(pán)和主機(jī)的通信,按下一個(gè)鍵的同時(shí)向主機(jī)發(fā)送一個(gè)8比特位的ASCII代 碼,鍵盤(pán)可以在任何時(shí)刻發(fā)送代碼,這取決于用戶的輸入速度,內(nèi)部的硬件必須能夠在任何時(shí)刻接收一個(gè)鍵入的字符。這是一個(gè)典型的異步傳輸過(guò)程。

  異步傳輸存在 一個(gè)潛在的問(wèn)題,即接收方并不知道數(shù)據(jù)會(huì)在什么時(shí)候到達(dá)。在它檢測(cè)到數(shù)據(jù)并做出響應(yīng)之前,第一個(gè)比特已經(jīng)過(guò)去了。這就像有人出乎意料地從后面走上來(lái)跟你說(shuō) 話,而你沒(méi)來(lái)得及反應(yīng)過(guò)來(lái),漏掉了最前面的幾個(gè)詞。因此,每次異步傳輸?shù)男畔⒍家砸粋€(gè)起始位開(kāi)頭,它通知接收方數(shù)據(jù)已經(jīng)到達(dá)了,這就給了接收方響應(yīng)、接收 和緩存數(shù)據(jù)比特的時(shí)間;在傳輸結(jié)束時(shí),一個(gè)停止位表示該次傳輸信息的終止。按照慣例,空閑(沒(méi)有傳送數(shù)據(jù))的線路實(shí)際攜帶著一個(gè)代表二進(jìn)制1的信號(hào)。步傳輸?shù)拈_(kāi)始位使信號(hào)變成0,其他的比特位使信號(hào)隨傳輸?shù)臄?shù)據(jù)信息而變化。最后,停止位使信號(hào)重新變回1,該信號(hào)一直保持到下一個(gè)開(kāi)始位到達(dá)。例如在鍵盤(pán)上數(shù)字“1”,按照8比特位的擴(kuò)展ASCII編碼,將發(fā)送“00110001”,同時(shí)需要在8比特位的前面加一個(gè)起始位,后面一個(gè)停止位。

  同步傳輸

  同步傳輸?shù)谋忍胤纸M要大得多。它不是獨(dú)立地發(fā)送每個(gè)字符,每個(gè)字符都有自己的開(kāi)始位和停止位,而是把它們組合起來(lái)一起發(fā)送。我們將這些組合稱為數(shù)據(jù)幀,或簡(jiǎn)稱為幀。

  數(shù)據(jù)幀的第一部分包含一組同步字符,它是一個(gè)獨(dú)特的比特組合,類似于前面提到的起始位,用于通知接收方一個(gè)幀已經(jīng)到達(dá),但它同時(shí)還能確保接收方的采樣速度和比特的到達(dá)速度保持一致,使收發(fā)雙方進(jìn)入同步。

  幀的最后一部分是一個(gè)幀結(jié)束標(biāo)記。與同步字符一樣,它也是一個(gè)獨(dú)特的比特串,類似于前面提到的停止位,用于表示在下一幀開(kāi)始之前沒(méi)有別的即將到達(dá)的數(shù)據(jù)了。

  同步傳輸通常要比異步傳輸快速得多。接收方不必對(duì)每個(gè)字符進(jìn)行開(kāi)始和停止的操作。一旦檢測(cè)到幀同步字符,它就在接下來(lái)的數(shù)據(jù)到達(dá)時(shí)接收它們。另外,同步傳輸?shù)拈_(kāi)銷也比較少。例如,一個(gè)典型的幀可能有500字節(jié)(即4000比特)的數(shù)據(jù),其中可能只包含100比特的開(kāi)銷。這時(shí),增加的比特位使傳輸?shù)谋忍乜倲?shù)增加2.5%,這與異步傳輸中25 %的增值要小得多。隨著數(shù)據(jù)幀中實(shí)際數(shù)據(jù)比特位的增加,開(kāi)銷比特所占的百分比將相應(yīng)地減少。但是,數(shù)據(jù)比特位越長(zhǎng),緩存數(shù)據(jù)所需要的緩沖區(qū)也越大,這就限制了一個(gè)幀的大小。另外,幀越大,它占據(jù)傳輸媒體的連續(xù)時(shí)間也越長(zhǎng)。在極端的情況下,這將導(dǎo)致其他用戶等得太久。

  了解了同步和異步的概念之后,大家應(yīng)該對(duì)ajax為什么可以提升用戶體驗(yàn)應(yīng)該比較清晰了,它是利用異步請(qǐng)求方式的。打個(gè)比方,如果現(xiàn)在你家里所在的小區(qū)因 某種情況而面臨停水,現(xiàn)在有關(guān)部門(mén)公布了兩種方案,一是完全停水8個(gè)小時(shí),在這8個(gè)小時(shí)內(nèi)完全停水,8個(gè)小時(shí)后恢復(fù)正常。二是不完全停水10 個(gè)小時(shí),在這10個(gè)小時(shí)內(nèi)水沒(méi)有完全斷,只是流量比原來(lái)小了很多,在10個(gè)小時(shí)后恢復(fù)正常流量,那么,如果是你你會(huì)選擇哪種方式呢?顯然是后者。

  有效的學(xué)習(xí)ajax的方法三

  AJAX 所包含的技術(shù)

  大家都知道ajax并非一種新的技術(shù),而是幾種原有技術(shù)的結(jié)合體。它由下列技術(shù)組合而成。

  1.使用CSS和XHTML來(lái)表示。

  2. 使用DOM模型來(lái)交互和動(dòng)態(tài)顯示。

  3.使用XMLHttpRequest來(lái)和服務(wù)器進(jìn)行異步通信。

  4.使用javascript來(lái)綁定和調(diào)用。

  在上面幾中技術(shù)中,除了XmlHttpRequest對(duì)象以外,其它所有的技術(shù)都是基于web標(biāo)準(zhǔn)并且已經(jīng)得到了廣泛使用的,XMLHttpRequest雖然目前還沒(méi)有被W3C所采納,但是它已經(jīng)是一個(gè)事實(shí)的標(biāo)準(zhǔn),因?yàn)槟壳皫缀跛械闹髁鳛g覽器都支持它。

  有效的學(xué)習(xí)ajax的方法四

  XMLHttpRequest 對(duì)象

  Ajax的原理簡(jiǎn)單來(lái)說(shuō)通過(guò)XmlHttpRequest對(duì)象來(lái)向服務(wù)器發(fā)異步請(qǐng)求,從服務(wù)器獲得數(shù)據(jù),然后用javascript來(lái)操作DOM而更新頁(yè)面。這其中最關(guān)鍵的一步就是從服務(wù)器獲得請(qǐng)求數(shù)據(jù)。要清楚這個(gè)過(guò)程和原理,我們必須對(duì) XMLHttpRequest有所了解。

  XMLHttpRequest是ajax的核心機(jī)制,它是在IE5中首先引入的,是一種支持異步請(qǐng)求的技術(shù)。簡(jiǎn)單的說(shuō),也就是javascript可以及時(shí)向服務(wù)器提出請(qǐng)求和處理響應(yīng),而不阻塞用戶。達(dá)到無(wú)刷新的效果。

  所以我們先從XMLHttpRequest講起,來(lái)看看它的工作原理。

  首先,我們先來(lái)看看XMLHttpRequest這個(gè)對(duì)象的屬性。

  它的屬性有:

  創(chuàng)建 XMLHttpRequest 對(duì)象

  所有現(xiàn)代瀏覽器 (IE7+、Firefox、Chrome、Safari 以及 Opera) 都內(nèi)建了 XMLHttpRequest 對(duì)象。

  通過(guò)一行簡(jiǎn)單的 JavaScript 代碼,我們就可以創(chuàng)建 XMLHttpRequest 對(duì)象。

猜你喜歡:

1.如何系統(tǒng)有效的學(xué)習(xí)編程知識(shí)

2.ajax學(xué)習(xí)心得

3.如何系統(tǒng)有效的學(xué)習(xí)歷史知識(shí)

4.系統(tǒng)有效的自學(xué)英語(yǔ)的方法

5.如何有效的系統(tǒng)的學(xué)習(xí)電腦

3743343