面试最常问的七道题👇

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

使用率较高的框架有jQuery、YUI、Prototype、Dojo、Ext.js、Mootools等。尤其是jQuery,超过91%。

轻量级框架有Modernizr、underscore.js、backbone.js、Raphael.js等。(理解这些框架的功能、性能、设计原理)

前端开发工具:Sublime Text 、Eclipse、Notepad、Firebug、HttpWatch、Yslow。

开发过的插件:城市选择插件,汽车型号选择插件、幻灯片插件。弹出层。(写过开源程序,加载器,js引擎更好)

2、WEB应用从服务器主动推送Data到客户端有那些方式?

3、对BFC规范的理解?

Formatting Context:指页面中的一个渲染区域,并且拥有一套渲染规则,他决定了其子元素如何定位,以及与其他元素的相互关系和作用。

标签的长时间连接(可跨域)

4、平时如何管理你的项目,如何设计突发大规模并发架构?

先期团队必须确定好全局样式(globe.css),编码模式(utf-8) 等

编写习惯必须一致(例如都是采用继承式的写法,单样式都写成一行);

标注样式编写人,各模块都及时标注(标注关键样式调用的地方);

页面进行标注(例如页面模块开始和结束);

CSS跟HTML 分文件夹并行存放,命名都得统一(例如style.css)

JS 分文件夹存放 命民以该JS 功能为准英文翻译;

图片采用整合的images.png png8 格式文件使用 尽量整合在一起使用方便将来的管理

5、那些操作会造成内存泄漏?

内存泄漏指任何对象在您不再拥有或需要它之后仍然存在。

垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为0(没有其他对象引用过该对象),或对该对象的惟一引用是循环的,那么该对象的内存即可回收。

setTimeout 的第一个参数使用字符串而非函数的话,会引发内存泄漏。

闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)

6、哪些操作会造成内存泄漏?

内存泄漏指任何对象在您不再拥有或需要它之后仍然存在。

垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为0(没有其他对象引用过该对象),或对该对象的惟一引用是循环的,那么该对象的内存即可回收。

setTimeout 的第一个参数使用字符串而非函数的话,会引发内存泄漏。

闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)

7、如何优化网页加载速度?

1.减少css,js文件数量及大小(减少重复性代码,代码重复利用),压缩CSS和Js代码

2.图片的大小

3.把css样式表放置顶部,把js放置页面底部

4.减少http请求数

5.使用外部 Js 和 CSS

推荐阅读更多精彩内容

  • 在线阅读 http://interview.poetries.top[http://interview.poetr...
    程序员poetry阅读 112,671评论 24 450
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 168,012评论 26 707
  • <a name='html'>HTML</a> Doctype作用?标准模式与兼容模式各有什么区别? (1)、<...
    clark124阅读 3,276评论 1 19
  • 献给四月的诗。 《献给四月的诗》 诗/陈述 过了四月,我们便换上短袖,隔得很远 我说过的话呵,你也都不必记得 因为...
    诗人陈述阅读 155评论 4 4
  • 一只蚊子在面前嗡嗡地晃来晃去 你两巴掌拍死它 这叫正常 一只蚊子在你面前嗡嗡地晃来晃去 不舍得一巴掌赶走它 这叫寂...
    企企阅读 133评论 2 5