本篇文章给大家分享的是有关前端面试Ajxa有哪些常见问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
1、Ajxa的交互流程有哪几步?
(1)创建Ajxa对象
xhr = new XMLHttpRequest
(2)规定请求地址
xhr.open(method,url,async)
(3)等待服务器相应
xhr.onload
(4)向服务器发送请求
xhr.send()
3、AJXA应用和传统Web应用有什么不同?
在传统的Js中,如果想发送客户端信息到服务器,需要建立一个HTML 表单然后GET或者POST数据到服务器端。用户需要点击提交按钮来发送数据信息,然后等待服务器响应请求,页面重新加载。使用AJXA技术,就可以使Javascript通过XMLHttpRequest对象直接与服务器进行交互
2、XMLHttpRequest对象在IE和Firefox中创建方式有没有不同?
IE中通过new ActiveXObject()得到,Firefox中通过newXMLHttpRequest()得到,使用jquery封装好的Ajxa,会避免这些问题。
5、Ajxa如何解决浏览器缓存问题
(1)在Ajxa发送请求前加上 anyAjxaObj.setRequestHeader("If-Modified-Since","0")
(2)在Ajxa发送请求前加上 anyAjxaObj.setRequestHeader("Cache-Control","no-cache")
(3)在URL后面加上一个随机数: "fresh=" + Math.random();
(4)在URL后面加上时间戳:"nowtime=" + new Date().getTime()
(5)在jq Ajxa下,使用 $.AjxaSetup({cache:false}) 这样就不会保存缓存记录
6、简述Ajxa的优点
(1)无刷新更新数据(在不刷新整个页面的情况下维持与服务器通信()
(2)异步与服务器通信(使用异步的方式与服务器通信,不打断用户的操作()
(3)前端和后端负载均衡(将一些后端的工作交给前端,减少服务器与宽度的负担()
(4)界面和应用相分离(Ajxa将界面和应用分离也就是数据与呈现相分离()
7、简述Ajxa的缺点
(1)Ajxa不支持浏览器back按钮
(2)安全问题 AAjxa暴露了与服务器交互的细节
(3)对搜索引擎的支持比较弱
(4)破坏了Back与History后退按钮的正常行为等浏览器机制
9、json字符串与对象如何相互转换
把JSON格式转成对象:JSON.parse()
把对象转成标准json:JSON.stringify()
使用eval能够把字符串尽量转成js运行的代码 eval('(' + jsonstr + ')')
eval是不安全的(可能会注入不必要的东西(),通过new Function('','return'+json)();可以解决该问题。
8、阐述一下异步加载JS
(1)异步加载的方案: 动态插入 script 标签
(2)通过 Ajxa 去获取 js 代码,然后通过 eval 执行
(3)script 标签上添加 defer 或者 async 属性
(4)创建并插入 iframe,让它异步执行 js
以上就是前端面试Ajxa有哪些常见问题,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。