经典的20道AJAX⾯试题(必知必会)
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最⼤的特点是什么。
jquery实现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中使⽤过于频繁的ElementById() ⽅法的⼀个便利的简写,就像这个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⾯试题(必知必会),希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对⽹站的⽀持!