酷家乐前端一二面面经,楼主已凉
前言:酷家乐面试前会通知你面试时间,面试后会反馈面试结果,总之,真的挺好的,可惜就是楼主二面没过~~~
一面:
1.自我介绍
2.说说自己做的前端项目
3.为什么想去做前端。
4.WEB存储的方法。
答了cookie、userdata、localStorage、sessionStorage、Indexed Database API以及它们的区别
5.跨域是什么,有哪些方法。
讲了同源策略限制、CORS、JSONP、图像PING以及它们区别
6.原型链
讲了原理、如何实现继承、有哪些方法。
7.前端优化的方法
H5+CSS3方面:
css动画代替js方法、使用图片裁剪减少图片请求次数、懒加载技术、
JS方面:
插入DOM片段最好使用文档片段fragment、使用innerHTML、减少对HTMLCollection的查询次数、算法方面的优化(优化循环)、展开循环(使用DUFF装置)、
使用Web Worker后台执行耗时的javascript代码、使用定时器、压缩代码、
还有其他的,当时只说了这么多。
8.ES6有哪些好用的东西
楼主答了let、const、箭头函数、解构赋值、Set、Map相关东西。
9.Vue的实现原理。
楼主答了Vue是如何实现数据视图的双向绑定的。
10.你有什么想问的。
二面:
1.自我介绍
2.说说自己做的前端
3.如何实现两栏布局。
div+设置display为inline-box
div+float(还讲了如何清除浮动的方法)
还有使用flex布局的方法
还有使用bootstrap的col-*-6
4.有了解BFC吗。
楼主答得不是很好,只答了容器里面的元素不会影响外面元素,没有答如何触发BFC还有BFC的用途。
面试官说清除浮动就是用了BFC的原理,回去可以好好了解下,从这里心态就开始崩了。
5.垂直居中的方法。
div+margin
父relativ+子absolute
flex方法
6.ES6哪些用了比较多。
let、const、箭头函数、解构赋值、Set、Map。
7.Set的兼容性怎么处理。
楼主答了webpack的bable模块可以把ES6转换为ES5
面试官说bable只会转化语法不会转化API,凉凉~~~
8.Promise链。给你两个异步任务,你要在两个异步任务完成之后,在控制台打印出finished。
楼主答了用个promis去包裹这两个promise,被面试官说那你这样就是回调函数了。
又答在第一promis之中使用第二个promise,面试官说还是不对,难受。
面试官说应该用Promise.all()方法,我曹,我居然忘了这个~~~
9.写个函数,参数为n和value,需要返回一个长度为n的数组,里面每个元素都是value,不能使用循环。
当时楼主吃了上个没记住Promise.all()的亏,以为这道题有坑,楼主本来想答函数柯里化,后来觉得不对。。。然后不知道脑子去哪儿了~~~
面试官提示如果你会用什么方法代替循环?
可以用递归。。。。凉了。
10.你是如何去学习前端的?你从什么时候开始学习前端的?
楼主觉得“你从什么时候开始学习前端的?”是最难答得问题,
因为你回答的学习久,会让人觉得你学习能力不行,答得学习得比较晚,会让面试官觉得你的深度不行,不稳。
11.经常会逛哪些社区?
只回答了国内的知乎、博客园、牛客网。。。。。
12.git和svn的区别。
楼主答得一般,最近没看
13.你有什么想问的。
面试总结:
1.回答千万不要吞吞吐吐,结结巴巴,会让面试官觉得你不自信。
(不要想着边说边想,想好再说。)
2.尽量回答的时候把面试官往你擅长的领域引,不要往不擅长的方面,不然面试官刚好想到问这方面
3.面试前多准备,多看书!!!!!!!!
不说了继续准备春招了。。。。