1、什麼是AJAX,為什麼要使用Ajax(請談一下你對Ajax的認識)
什麼是ajax:
AJAX是“Asynchronous JavaScript and XML”的縮寫。他是指一種創建交互式網頁應用的網頁開發技術。
Ajax包含下列技術:
基於web標准(standards-basedpresentation)XHTML+CSS的表示;
使用 DOM(Document ObjectModel)進行動態顯示及交互;
使用 XML 和 XSLT 進行數據交換及相關操作;
使用 XMLHttpRequest 進行異步數據查詢、檢索;
使用 JavaScript 將所有的東西綁定在一起。
2、為什麼要用ajax:
Ajax應用程序的優勢在於:
1. 通過異步模式,提升了用戶體驗
2. 優化了浏覽器和服務器之間的傳輸,減少不必要的數據往返,減少了帶寬占用
3. Ajax引擎在客戶端運行,承擔了一部分本來由服務器承擔的工作,從而減少了大用戶量下的服務器負載。
2、AJAX最大的特點是什麼。
Ajax可以實現動態不刷新(局部刷新)
就是能在不更新整個頁面的前提下維護數據。這使得Web應用程序更為迅捷地回應用戶動作,並避免了在網絡上發送那些沒有改變過的信息。
3、請介紹一下XMLhttprequest對象。
Ajax的核心是JavaScript對象XmlHttpRequest。該對象在Internet Explorer 5中首次引入,它是一種支持異步請求的技術。簡而言之,XmlHttpRequest使您可以使用JavaScript向服務器提出請求並處理響應,而不阻塞用戶。通過XMLHttpRequest對象,Web開發人員可以在頁面加載以後進行頁面的局部更新。
4、AJAX技術體系的組成部分有哪些。
HTML,css,dom,xml,xmlHttpRequest,javascript
5、AJAX應用和傳統Web應用有什麼不同。
在傳統的Javascript編程中,如果想得到服務器端數據庫或文件上的信息,或者發送客戶端信息到服務器,需要建立一個HTML form然後GET或者POST數據到服務器端。用戶需要點擊”Submit”按鈕來發送或者接受數據信息,然後等待服務器響應請求,頁面重新加載。
因為服務器每次都會返回一個新的頁面, 所以傳統的web應用有可能很慢而且用戶交互不友好。
使用AJAX技術, 就可以使Javascript通過XMLHttpRequest對象直接與服務器進行交互。
通過HTTP Request, 一個web頁面可以發送一個請求到web服務器並且接受web服務器返回的信息(不用重新加載頁面),展示給用戶的還是通一個頁面,用戶感覺頁面刷新,也看不到到Javascript後台進行的發送請求和接受響應。
6、AJAX請求總共有多少種CALLBACK。
Ajax請求總共有八種Callback
onSuccess
onFailure
onUninitialized
onLoading
onLoaded
onInteractive
onComplete
onException
7.Ajax和javascript的區別。
javascript是一種在浏覽器端執行的腳本語言,Ajax是一種創建交互式網頁應用的開發技術 ,它是利用了一系列相關的技術其中就包括javascript。
Javascript是由網景公司開發的一種腳本語言,它和sun公司的java語言是沒有任何關系的,它們相似的名稱只是一種行銷策略。
在一般的web開發中,javascript是在浏覽器端執行的,我們可以用javascript控制浏覽器的行為和內容。
在 Ajax應用中信息是如何在浏覽器和服務器之間傳遞的
通過XML數據或者字符串
8、在浏覽器端如何得到服務器端響應的XML數據。
XMLHttpRequest對象的responseXMl屬性
9、 XMLHttpRequest對象在IE和Firefox中創建方式有沒有不同。
有,IE中通過new ActiveXObject()得到,Firefox中通過newXMLHttpRequest()得到
10、介紹一下XMLHttpRequest對象的常用方法和屬性。
open(“method”,”URL”) 建立對服務器的調用,第一個參數是HTTP請求 方式可以為GET,POST或任何服務器所支持的您想調用的方式。
第二個參數是請求頁面的URL。
send()方法,發送具體請求
abort()方法,停止當前請求
readyState屬性 請求的狀態 有5個可取值0=未初始化 ,1=正在加載
2=以加載,3=交互中,4=完成
responseText 屬性 服務器的響應,表示為一個串
reponseXML 屬性 服務器的響應,表示為XML
status 服務器的HTTP狀態碼,200對應ok 400對應not found
12、什麼是XML
XML是擴展標記語言,能夠用一系列簡單的標記描述數據
13、XML的解析方式
常用的用dom解析和sax解析。dom解析是一次性讀取xml文件並將其構造為DOM對象供程序使用,優點是操作方便,但是比較耗內存。Sax是按事件驅動的方式解析的,占用內存少,但是編程復雜
14、你采用的是什麼框架(架包)
這題是必問的,一般也是最開始就會問到。
在java中比較流行的有 dojo, Prototype , JQuery, Dwr, extjs 等等
15、如果熟悉某種ajax框架,他可能會問到怎樣在程序中使用這種框架
DWR框架介紹
DWR(DirectWeb Remoting)是一個WEB遠程調用框架.利用這個框架可以讓AJAX開發變得很簡單.利用DWR可以在客戶端利用JavaScript直接調用服務端的Java方法並返回值給JavaScript就好像直接本地客戶端調用一樣(DWR根據Java類來動態生成JavaScrip代碼).
DWR的實現原理是通過反射,將java翻譯成javascript,然後利用回調機制,從而實現了javascript調用Java代碼
16、介紹一下Prototype的$()函數,$F()函數,$A()函數都是什麼作用
$() 方法是在DOM中使用過於頻繁的document.getElementById() 方法的一個便利的簡寫,就像這個DOM方法一樣,這個方法返回參數傳入的id的那個元素。
$F()函數是另一個大收歡迎的“快捷鍵”,它能用於返回任何表單輸入控件的值,比如textbox,drop-down list。這個方法也能用元素id或元素本身做為參數。
$A()函數能把它接收到的單個的參數轉換成一個Array對象。
17、介紹一下XMLHttpRequest對象
通過XMLHttpRequest對象,Web開發人員可以在頁面加載以後進行頁面的局部更新。
AJAX開始流行始於Google在2005年使用的”Google Suggest”。
“Google Suggest”就是使用XMLHttpRequest對象來創建動態的Web接口:
當用戶開始輸入google的搜索框,Javascript發送用戶輸入的字符到服務器,然後服務器返回一個建議列表。
XMLHttpRequest對象在IE5.0+, Safari 1.2, Mozilla1.0/Firefox, Opera 8+ 和NetScapt7 開始被支持。
18、AJAX的全稱是什麼? 介紹一下AJAX?
AJAX的全稱是Asynchronous JavaScript And XML.
AJAX是2005年由Google發起並流行起來的編程方法, AJAX不是一個新的編程語言,但是它是一個使用已有標准的新的編程技術。
使用AJAX可以創建更好,更快,更用戶界面友好的Web應用。
AJAX技術基於Javascript和HTTP Request.
19、Ajax主要包含了哪些技術?
Ajax(Asynchronous JavaScript + XML)的定義
基於web標准(standards-based presentation)XHTML+CSS的表示;
使用 DOM(Document Object Model)進行動態顯示及交互;
使用 XML 和 XSLT 進行數據交換及相關操作;
使用XMLHttpRequest 進行異步數據查詢、檢索;
使用 JavaScript 將所有的東西綁定在一起。英文參見Ajax的提出者Jesse James Garrett的原文,原文題目(Ajax: A New Approach to
Web Applications)。
類似於DHTML或LAMP,AJAX不是指一種單一的技術,而是有機地利用了一系列相關的技術。事實上,一些基於AJAX的“派生/合成”式(derivative/composite)的技術正在出現,如“AFLAX”。
AJAX的應用使用支持以上技術的web浏覽器作為運行平台。這些浏覽器目前包括:Mozilla、Firefox、Internet Explorer、Opera、Konqueror及Safari。但是Opera不支持XSL格式對象,也不支持XSLT。
20、AJAX都有哪些優點和缺點?
1、最大的一點是頁面無刷新,用戶的體驗非常好。
2、使用異步方式與服務器通信,具有更加迅速的響應能力。
3、可以把以前一些服務器負擔的工作轉嫁到客戶端,利用客戶端閒置的能力來處理,減輕服務器和帶寬的負擔,節約空間和寬帶租用成本。並且減輕服務器的負擔,ajax的原則是“按需取數據”,可以最大程度的減少冗余請求,和響應對服務器造成的負擔。
4、基於標准化的並被廣泛支持的技術,不需要下載插件或者小程序。
ajax的缺點
1、ajax不支持浏覽器back按鈕。
2、安全問題 AJAX暴露了與服務器交互的細節。
3、對搜索引擎的支持比較弱。
4、破壞了程序的異常機制。
5、不容易調試。
以上所述是小編給大家介紹的經典的20道AJAX面試題(必知必會),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!