前端面试必问题

#1.谈谈你对ajax的理解?(概念,特点,作用,代码)

ajax是指一种创建交互式网页应用的开发技术,改善用户体验,实现无刷效果。

优点:不需要插件的支持,优秀的用户体验,提高web程序性能,减轻服务器和带宽的负担

缺点:破环浏览器的“前进”,“后退”按钮的正常功能,是可以通过简单的插件弥补

代码:

var xhr=new XMLHttpRequest()//创建new XMLHttpRequest对象

var url="https://home.firefoxchina.cn"//准备发送请求的地址

xhr.open('get',url,true)//调用XMLHttpRequest对象的方法

xhr.onreadystatechange=function(){

if(xhr.readyState===4&&xhr.status===200){

  var data=JSON.parse(xhr.responseText).result.data;

                console.log(data);

                for(var i=0;i<data.length;i++){

                  //条件体


                }

        }

 xhr.send();

}

#2.什么是跨域,如何实现跨域访问?

跨域是指不同域名之间的访问。

实现:

(1)JSONP跨域:利用script脚本允许引用不同下域下的js实现的,将回调方法带入服务器,返回结果时

回调。

(2)跨域资源共享(cors)

跨域资源共享是一种网络浏览器的技术规范它为web服务器定义一种方式,允许网页从不同的域访问其资源

cors与jsonp相比

a,JSONP只能实现get请求,而cors支持所有类型的http请求。

b,使用CORS,开发者可以使用普通的XMLHttpRequest发起请求和获得数据,比起JSONP有更好的错误处理

c,JSONP主要被老的浏览器支持,他们往往不支持CORS,而绝大多数现代浏览器都已经支持了CORS

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,820评论 1 45
  •   2005 年,Jesse James Garrett 发表了一篇在线文章,题为“Ajax: A new App...
    霜天晓阅读 903评论 0 1
  • 什么是跨域 跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实...
    HeroXin阅读 858评论 0 4
  • 什么是跨域 跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实...
    Yaoxue9阅读 1,336评论 0 6
  • 什么是跨域 跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实...
    他方l阅读 1,086评论 0 2