FE面试题库

一、HTML

序号
面试题目
难度等级
回答要点
H1 简述编写HTML需要注意哪些事项? ☆ DOCTYPE、charset、viewport、语义化、CSS与JS的位置、DOM层级、结构样式行为的分离、模板等。依据回答的正确度、全面性、详细度区分级别。
H2 DOCTYPE ☆ 考察DOCTYPE的意义、HTML标准、HTML的标准模式与quirk模式,以及不同模式下的区别。依据回答的正确度、全面性、详细度区分级别。
H3

DOM元素的显示(渲染)类型以及区别?

☆ 重点考察区别,依据 “区别" 回答的正确度、全面性、详细度区分级别。
H4 列举一些HTM(包括HTML5)元素,并说明元素的语义 ☆ 考察HTML元素的语义。
H5 HTML5元素的兼容问题?如何自定义元素? ☆☆ 考察前端知识面,是否知道或用过html5shiv、modernizr、Custom Element,并且认识深刻(T5以上)。

二、CSS

序号
面试题目
难度等级
回答要点
C1 介绍一下CSS选择器优先级 ☆ 权重计算方式、!important、内联样式,同等权重样式处理...
C2

介绍一下CSS选择器及其相应API?class操作的API classList?是否了解过Sizzle,甚至阅读过源代码?

☆

依据回答的正确度、全面性、详细度区分级别。

C3 CSS中position有哪几种取值,以及每种取值的含义? ☆ 依据回答的正确度、全面性、详细度区分级别。
C4 CSS 中的float的作用及其用法、带来的副作用?   依据对float的认识深刻程度区分级别。
C5

代码实现三列布局?

  依据代码质量区分级别。
C6 如何水平居中一个元素?垂直居中一个元素呢?   依据回答的正确度、全面性、详细度区分级别。如果能对各种情况分类回答,大于或等于T5
C7 拿到一个PSD图后,你是如何开始工作的?   重点考察前端开发流程
C8 (有几种类型的图片格式?你如何选择图片格式?)如何优化一个页面上的图片?    
C9 介绍CSS布局的固定布局、流动布局、弹性布局?用过哪些布局框架?布局框架的原理?响应式设计? T5级以上 大于或等于T5
C10 了解或使用过哪种(些)CSS预处理器及其工具库?简要介绍CSS预处理器及其工具库的功能点?使用CSS预处理器时要避免那些东西?是否写个或总结过CSS工具库?   回答”使用CSS预处理器时要避免那些东西“比较好或建设过CSS工具库(T5以上)

三、JavaScript

序号
面试题目
难度等级
回答要点
J1 JS的数据类型及其判断?    
J2 作用域链原理? ☆  
J3 闭包原理?写个闭包demo?闭包的意义及其副作用?如何规避副作用? T5级以上  
J4 this的含义?改变this指向的方法?    
J5 原型链原理?如何利用原型链实现继承?prototype与__proto__的区别?代码写出 T5级以上  
J6 常用的DOM、BOM操作?    
J7 请说出每个维度的含义?https://msdn.microsoft.com/en-us/library/ie/hh781509(v=vs.85).aspx T5级以上  
J8 用过哪些HTML5功能?应用场景是什么?如何解决的兼容性?    
J9 是否了解过ES(ECMAScript)标准?请介绍下ES5 ES6 或ES7? T5级以上  
J10 前端实现动画的方法?你如何抉择哪种动画实现方法? T5级以上  
J11

什么是事件、事件对象、事件发生的三个阶段、事件委托,事件的绑定与解除的几种方法?如何阻止事件冒泡、事件的默认行为?如何自定义事件?

   
J12 什么预加载、延迟加载、同步加载、异步加载?各如何实现?应用场景是?Deferred对象与Promise对象?    
J13 什么是reflow、repaint?会引发什么问题?如何避免?    
J14 本地存储有几种实现方式?如何理解每种方式?区别是?    
J15 什么是ajax,ajax的各个阶段(整个过程)?ajax相关的方法(API)?     
J16 前端跨域的方法?    
J17 了解过哪些前端安全问题?    

四、网络、HTTP协议

序号
面试题目
难度等级
回答要点
W1 HTTP协议的请求头和响应头?尤其是缓存相关的头信息 ☆  
W2 有哪些常见的HTTP响应码,其含义是什么? ☆  
W3 HTTP有哪些动作?GET方法和POST方法的区别? ☆  
W4 请介绍在浏览器地址栏中输入url回车后,下面会发生什么? ☆  
W5 前后端如何通信?跨页面如何通信?    

五、基本算法

序号
面试题目
难度等级
回答要点
A1 简要叙述一些常见排序算法的实现原理。 ☆ 快排等
A2 如何生成100个互不重复的5位字符串(全部由数字构成)。 ☆  
A3 用JS来实现一个有序数组的二分查找算法。    
A4 如何给数据添加千分位、例如12345.67格式化为12,345.67    
A5 模拟一个HashTable类,包含有add、remove、contains、length方法    

六、项目

序号
面试题目
难度等级
回答要点
P1 解决浏览器兼容问题的实践总结?    
P2 了解或实践过哪些前端性能优化?为什么要这样优化(原理)? T5级以上  
P3 对AMC laoder 或 commandJS loader的认识与使用情况?    
P4 对MVC的认识与使用情况?    
P5 什么是SPA(单页面应用),是什么支撑了这里的“单页”?    
P6 做过最有挑战性的项目是哪个?解决了什么问题?取得了什么成果? ☆☆ SMART面试法
P7 开发过什么项目,前端架构是什么样的?前后端有没有分离? ☆  
P8 用过哪些前端开发框架?    
P9 如何有效实现版本管理?如果有CDN呢?    
P10 对前端工程自动化的实践情况?尤其是构建(build) T5级以上 shell、ant、make、grunt、gulp、fis、edp等
P11 NodeJS掌握或项目情况?或其他服务端语言的掌握情况? T5级以上  
P12 若你应聘成功,你会给团队带来什么? T5级以上  

posted on 2017-08-02 17:37  王泽平  阅读(911)  评论(0)    收藏  举报

导航