Skip to main content
 Web开发网 » 数据库教程

前端面试题《AJAX》

2021年10月11日8680百度已收录

1.什么是ajax?ajax作用是什么?AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.

2.为什么要用ajax:Ajax应用程序的优势在于:

\1. 通过异步模式,提升了用户体验

\2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用

\3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载

3.AJAX最大的特点是什么。Ajax可以实现动态不刷新(局部刷新)就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

4.请介绍一下XML开发人员可以在页面加载以后进行页面的局部更新

5.AJAX技术体系的组成部分有哪些。HTML,css,dom,xml,xml

6.工作当中会和后台交互吗? 那你能说说封装好的 ajax里的几个参数吗 ?url: 发送请求的地址。

type: 请求方式(post或get)默认为get。

async: 同步异步请求,默认true所有请求均为异步请求。

timeout : 超时时间设置,单位毫秒

data:要求为Object或String类型的参数,发送到服务器的数据

cache:默认为true(当dataType为script时,默认为false), 设置为false将不会从浏览器缓存中加载请求信息。

dataType: 预期服务器返回的数据类型。

可用的类型如下:

xml:返回XML文档,可用JQuery处理

html:返回纯文本HTML信息;包含的script标签会在插入DOM时执行。

script:返回纯文本JavaScript代码。不会自动缓存结果。

json:返回JSON数据。

jsonp:JSONP格式。使用JSONP形式调用函数时,例如myurl?callback=?,JQuery将自动替换后一个“?”为正确的函数名,以执行回调函数。

text:返回纯文本字符串。

success:请求成功后调用的回调函数,有两个参数。

(1) 由服务器返回,并根据dataType参数进行处理后的数据。

(2) 描述状态的字符串。

error:要求为Function类型的参数,请求失败时被调用的函数。该函数有3个参数

(1) XML对象

(2) 错误信息

(3) 捕获的错误对象(可选)

complete :function(XML){ //请求完成后最终执行参数

7.Ajax的实现流程是怎样的?Ajax的实现流程是怎样的?

(1)创建XML

(2)创建一个新的

(3)设置响应

(4)发送

(5)获取异步调用返回的数据.

(6)使用JavaScript和DOM实现局部刷新.

<script type="text/javascript"> var

Ajax请求总共有八种Callback

onSuccess

onFailure

onUninitialized

onLoading

onLoaded

onInteractive

onComplete

onException

9.AJAX有哪些有点和缺点?AJAX有哪些有点和缺点?

优点:

1、最大的一点是页面无刷新,用户的体验非常好。

2、使用异步方式与服务器通信,具有更加迅速的响应能力。

3、可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。

4、基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。

缺点:

1、ajax不支持浏览器back按钮。

2、安全问题 AJAX暴露了与服务器交互的细节。

3、对搜索引擎的支持比较弱。

4、破坏了程序的异常机制。

5、不容易调试。

10.Ajax 解决浏览器缓存问题?Ajax 解决浏览器缓存问题?

1、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0")。

2、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-Control","no-cache")。

3、在URL后面加上一个随机数: "fresh=" + Math.random();。

4、在URL后面加上时间戳:"nowtime=" + new Date().getTime();。

5、如果是使用jQuery,直接这样就可以了 $.ajaxSetup({cache:false})。这样页面的所有ajax都会执行这条语句就是不需要保存缓存记录。

评论列表暂无评论
发表评论
微信