前端面试经典题目合集-Ajax 是什么?Ajax 的交互模型?同步和异步的区别?如何解决跨域问题?
Ajax 是什么: 1. 通过异步模式,提升了用户体验 2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用 3. Ajax 在客户端运行,承担了一部分本来由服务器承担的工作,减少了大用户量下的服务器负载。
Ajax 的最大的特点: 1. Ajax可以实现动态不刷新(局部刷新) 2. readyState 属性 状态 有5个可取值: 0 = 未初始化,1 = 启动, 2 = 发送,3 = 接收,4 = 完成
Ajax 同步和异步的区别: 1. 同步:提交请求 -> 等待服务器处理 -> 处理完毕返回,这个期间客户端浏览器不能干任何事 2. 异步:请求通过事件触发 -> 服务器处理(这是浏览器仍然可以作其他事情)-> 处理完毕 ajax.open方法中,第3个参数是设同步或者异步。
Ajax 的缺点: 1. Ajax 不支持浏览器 back 按钮 2. 安全问题 Ajax 暴露了与服务器交互的细节 3. 对搜索引擎的支持比较弱 4. 破坏了程序的异常机制 5. 不容易调试
解决跨域问题: 1. jsonp 2. iframe 3. window.name、window.postMessage 4. 服务器上设置代理页面
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。