作者:樱桃小丸子儿

链接:https://www.jianshu.com/p/abadcc84e2a4

javascript高级前端面试题(史上最全的web前端面试题汇总及答案jQuery)(1)

Jquery与jQuery UI 有啥区别?

jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等。

jQuery UI则是在jQuery的基础上,利用jQuery的扩展性,设计的插件。 提供了一些常用的界面元素,诸如对话框、拖动行为、改变大小行为等等。

如何判断当前脚本运行在浏览器还是node环境中?(阿里)

通过判断Global对象是否为window,如果不为window,当前脚本没有运行在浏览器中。

你所了解到的web攻击技术

①XSS(Cross-Site Scripting,跨站脚本攻击):指通过存在安全漏洞的Web网站注册用户的浏览器内运行非法的HTML标签或者JavaScript进行的一种攻击。

②SQL注入攻击

③CSRF(Cross-Site Request Forgeries,跨站点请求伪造):指攻击者通过设置好的陷阱,强制对已完成的认证用户进行非预期的个人信息或设定信息等某些状态更新。

java的三大框架是什么,功能各是什么

三大框架是用来开发web应用程序中使用的。

Struts:基于MVC的充当了其中的试图层和控制器;

Hibernate:做持久化的,对JDBC轻量级的封装,使得我们能过面向对象的操作数据库;

Spring: 采用了控制反转的技术,管理Bean,降低了各层之间的耦合。

Jquery是什么?

javascript高级前端面试题(史上最全的web前端面试题汇总及答案jQuery)(2)

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。

jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。

jQuery的核心特性可以总结为:

①具有独特的链式语法和短小清晰的多功能接口;

②具有高效灵活的css选择器,并且可对CSS选择器进行扩展;

③拥有便捷的插件扩展机制和丰富的插件。

jQuery兼容各种主流浏览器,如IE 6.0 、FF 1.5 、Safari 2.0 ,Opera 9.0 等。

你知道哪些关于ES6新增的东西

关于ES6新增的东西

如何控制网页在网络传输过程中的数据量?

最显著的方法是启用GZIP压缩。此外保持好的编码习惯,避免重复和css、JavaScript代码,多余的HTML标签和属性。

Flash、Ajax各自的优缺点,在使用中如何取舍?

Flash的缺点是需要客户端安装Flash插件,比较大,且更改了默认的HTML页面行为;但可以方便地实现很多特效及动画,且具有较高权限。

javascript高级前端面试题(史上最全的web前端面试题汇总及答案jQuery)(3)

Ajax的缺点是编程较为复杂,需要服务器端的支持,能实现的效果只能是DOM API提供的,权限很低,较难跨域;但可以显著加快页面的载入速度和用户体验。

此外,二者都不能被搜索引擎索引(Google已支持Flash文本的索引),不利于SEO。

建议:重要和关键部分直接用HTML,交互部分可以使用Ajax,复杂的动画可采用Flash。

常使用的库有哪些?常用的前端开发工具?开发过什么应用或组件?

最常用的库:jquery-1.4.2.min.js

常用的前端开发工具:firebug、photoshop、editplus、取色器、色板、eclipse

说说YSlow

Yslow是雅虎开发的基于网页性能分析浏览器插件,是基于Mozilla Firefox上firebug插件的一个插件。它的出现的主要目的就是检测我们的页面性能。

它让用户可以就近取得所需的内容,解决网络拥挤的状况,提高用户访问网站的响应速度。

是否了解flex布局?

参照阮一峰老师的flex布局教程

Flex 布局教程:语法篇

Flex 布局教程:实例篇

是否了解webpack

看完让你彻底搞懂Websocket原理

webSocket如何兼容低浏览器?

Adobe Flash Socket 、 ActiveX HTMLFile (IE) 、 基于 multipart 编码发送 XHR 、 基于长轮询的XHR。

简述同步和异步的区别

同步是阻塞模式,异步是非阻塞模式。

同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;

异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。

异步ajax的优缺点都有什么?

javascript高级前端面试题(史上最全的web前端面试题汇总及答案jQuery)(4)

优点:

• 相对于同步ajax:不会造成UI卡死,用户体验好。

• 相对于刷新页面,省流量

缺点:

• 后退按钮无效;

• 多个请求同时触发时,由于回调时间不确定,会造成混乱,避免这种混乱需要复杂的判断机制。

• 搜索引擎不友好

• 数据安全

一次完整的HTTP事务是怎样的一个过程?

a. 域名解析

b. 发起TCP的3次握手

c. 建立TCP连接后发起http请求

d. 服务器端响应http请求,浏览器得到html代码

e. 浏览器解析html代码,并请求html代码中的资源

f. 浏览器对页面进行渲染呈现给用户

,