2017年秋季校招前端面经(百度,腾讯,网易,华为,乐视等)
本文是根据面试时间,对个人求职过程中的所有面试进行了汇总,大小类型的公司都有。由于面试时间问题,面试的问题难免会有一些疏漏。
建议:面试完多总结,面试中遇到的不会的,一定要搞懂。多看别人的面经,看到不懂的也尽量弄懂。毕竟面试很大一部分问题是差不多的,其他就靠个人的平时积累了。
此外:也对面试中常见的问题进行了汇总,并给出了答案,供大家参考,附链接:
最后在附上 师妹今年校招前端面经:
前端 2018 届校招笔试面经【百度,阿里,腾讯,阿里文娱,携程,美团,拼多多】
面试官人蛮好的,问了很多我都不知道,所以什么方面都问了一些,不过最后还是说了句,算你过了。
技术面:
自我介绍语言混,没有逻辑估,估计30多秒。
问了一个排序算法的优化(具体算法名字忘了)
网络安全方面的问题
简历的项目描述(没有总结过,说的很渣)
对测试的一些了解
模块化开发了解吗
如何编写代码
网站性能优化的方法
要不要做测试(我说不要)
HR面:
自我介绍
你的优势(最好自己先总结好)
如果面试没通过,你觉得原因是什么
为什么想来华为
曾经面临的最大困难,解决办法
综面(8月下旬):
具体没啥问题,就是针对简历来问的一些基本信息。
总结:但是因为只会前端的,还有前端的项目比较简单,可能还有本科学校因素,这些加在一起被fail 了吧。
最后,没有收到优招通过的短信。我同学收到了通过的短信,最后也没有被叫去签,应该是被横向对比了。
还好自己也没抱希望于华为,即使这样还是很认真的学习前端的东西,不然秋招可能就废了,一定要不断提升自己的技能;
阿里实习生面试(5月份)
技术面:
自我介绍
有没有项目经历(无);
对象属性的遍历;
promise的实现;
样式的优先级;
一道简单的对象引用问题
用js写过什么(我说瀑布流,但是临场就写了一点点)
一道js题目(关于引用的)
还有其他一些题目忘了......
总结:我刚见面就说自己才学了几个月,然后面试官就说你这是在让我(具体说啥忘了),其实这句话,就暴露出我的不自信,也让面试官直接就否定了我。后面其实就是应付下我。
大众点评(6月底,第一次电话面试)
技术面:
自我介绍(杂乱,直接被面试官终止了,估计听不下去了)
css display属性有哪些值,各有什么表现;(不知道为什么,这个问题就是听不清楚........重复了好多遍(尴尬))
position属性的值
盒模型和box-sizing
三级菜单的实现,简单描述下你的实现过程;不用框架
一个table,点击按钮,实现某一列的刷新,不能采用框架,简单描述下实现过程
事件绑定的具体实现...事件移除
ajax的实现
对MVC有了解吗;这个表示知道有这个,但是不是很了解;也就简单的说了下
nodejs知道吗;那时候对noedjs一知半解的。
你觉得应该重点掌握哪些知识;我答原生js, 他补充:除了原生js之外,去了解一些框架,nodejs等,
页面的渲染过程(大概是这样)
json是什么的缩写
缓存机制
dom2和dom0之间的区别
dom3新增加了哪些特性,哪些已经被完全接受了
json是什么的缩写(自己给自己挖的坑)
http请求有哪些,post和get有什么不一样
手机某一行均分为四个,不知道尺寸的情况下(这道题不是很理解,我说百分比,他说不知道尺寸,兼容各个屏幕,(媒体查询,rem,自己瞎猜的))
总结:这时候,自己也看过很多书了,前端基本有些了解,但是还是存在很多不懂的。
腾讯TST面试(8月初,电话面试)
技术面:
自我介绍
项目介绍:(遇到的难点以及解决办法)这里我还得提炼提炼;
iconfont矢量图标的优点:
- 加载文件体积小。
- 可以直接通过css的font-size,color修改它的大小和颜色,对于需要缩放多个尺寸的图标,是个很好的解决方案。
- 支持一些css3对文字的效果,例如:阴影、旋转、透明度。
- 兼容低版本浏览器。
缺点:
- 矢量图只能是纯色的。
- 制作门槛高,耗时长,维护成本也很高。
Dom0级和dom2级事件之间的区别;
代理模式的好处在哪里:对性能有怎样的影响;
web缓存,浏览器怎么知道要从缓存获取;禁止缓存,期限,修改
cookies,每次请求是否带cookie,不同域的网页怎么获取同一个cookie
原生ajax的实现,具体思路
谈一谈http状态码
谈一谈flexbox,讲一讲哪些浏览器已经支持。
实现跨域的方法,跨域包括(端口,域名,)iframe实现跨域的具体方法;
时钟7点15分的夹角是多少度(时针和分针)
冒泡和捕捉,取消冒泡,阻止默认事件;
了解webp的图片格式;
总结:老实说,我对内推根部就不报啥期望,结果竟然有机会面了一次,还是腾讯啊。面试官人非常好,你不会的他会一点一点去引导你,并且全程一直很和气。面试体验很好呢。
科华恒盛(9月上旬,电话面试)
技术面:
简单的项目介绍,没有问项目遇到的难点;
post get的区别;
多个ajax怎么处理
闭包的概念;
基本数据类型;
this的问题;
call apply之间的区别;
有没有用过sass之类的
事件循环
null和defined的区别
this的理解
HR面:
个人的一些基本信息的来哦接;
期望工作地点薪资;
对公司的了解;
总结:科华是第一给我发offer的。总体感觉其实还好,就是公司偏硬件,感觉以后对个人发展不好。
中兴(9月中旬)
投的是软件方向的。。。
技术面:
自我介绍
对C语言了解哪些
说一下策略模式,并画类图(js设计模式表示没有类图,不会画)
了解哪些排序算法
二叉树中序遍历的代码(不会写)
数据库的一个命令(具体忘了,不会)
总结:面了总共10多分钟吧,很快。很多不会,自然挂了。面试体验很好,面试官对你很好,你说不会他说没关系,一直笑呵呵。你走的时候还热情欢送。
酷家乐(9月下旬)
首先是一道编程题:我想多了,没有了解题意,最后时间不够,代码没写完。
技术面:
就问了三个智力问题:
期间让我写一个智力题的算法,我说不会写,
第三个智力题没想出来怎么做;
网易(9月下旬):
技术面:
前端学了多久
节点的拷贝
基本数据类型
深度拷贝的实现(对象)
width:(100%);border:1px splid red;这样子有什么问题(不知道)
前端的一些攻击有了解吗,简单说下
项目的难点(不要说那种你解决了,但是不知道什么原因的)
了解过nodejs和es6吗
检验网址的正则
原生ajax
call和apply的区别
垃圾回收的方法,具体描述每一种方法
性能优化方法
事件委托的缺点
判断数组的方法(isArray, toString())
总结:第一次面试互联网大公司,真的很紧张啊。面试官应该也感觉到了。当然自己也知道自己回答的很差,挂了很正常。
乐视(9月下旬)
技术面1:
自我介绍
问实习做的一些事情,问的挺深入,然而我忘了怎么做的,支支吾吾说了一些,最后面试官就说你可能真的忘了:
闭包
基本数据类型
变量提升
jquery中ajax的写法
原型链
盒模型
去掉空白的正则
看过那些书(高级程序设计看了几遍,有啥收获)
math.random的范围
技术面2(是一个架构师,没问技术的):
自我介绍
项目的难点和解决方法
你的优势
后面就是针对简历上写的他比较感兴趣的进行提问
比如我当班长,参加智能车比赛的经历等其他的
职业规划
HR面:
自我介绍;
为什么学前端
对乐视的了解
年龄也聊了一下(说我比较小...)
遇到过的困难
你手上有哪些offer
有用过乐视的产品吗(我说没有,HR说为啥不买?应该说买了乐视电视的......)
总结:据说乐视HR面主要看你的表达能力和是否符合企业文化。乐视就第一面面的比较差,我没想到他会问的那么深入,自然也就没有准备过。前面和后面的面试都没有像他一样,问我的实习经历。不过还好让我过了。二面是一个架构师,后面他还谈了自己作为架构师的一些感想,不过很多不能体会,所以听了很快就忘了,但是感觉确实比较牛,人也很好。HR面的时候,全程注视着她。以前和别人交流的时候,我都不会看别人,现在我终于学会了看别人了,很高兴啊。
百度(9月下旬):
一面:
自我介绍
js基本数据类型
如何自己实现一个alert
居中的方法
继承的实现(代码)
ajax原生代码
两栏的实现(响应式的);如何实现拖动鼠标实现一边变大,一边减小。
flex的了解
写一个链式调用;
移动端meta 的一些设置
网格的实现方法
盒模型
媒体查询
闭包的概念和作用
项目的难点
二面:
自我介绍;
为什么学习前端,怎么学的
三个tab页面,实现代码(我先给出一个一般的代码,后面又给出了优化,总体而言,面试官还是比较满意的)
你的优势,劣势(会让你说一下具体体现)
import和link的区别(说了一下,面试官说,你不了解吧?我,嗯)
性能优化方法(面试官说这些比较旧了,有没有新的方法)
为什么cdn比较快;
怎样减少http请求次数
对加密算法了解吗,怎样设计一个加密算法
前端的攻击有了解过吗
看过那些书
了解设计模式吗(我说了单例和观察者模式,并写了下代码,介绍有啥作用)
用过哪些自动化构建工具,怎么用的
最近在学什么
项目的难点
有没有写过插件,用js写过什么(然后就是具体描述怎么实现的)
对数据库的了解
三面:
自我介绍
一道算法题;代码实现,让优化(经提醒还是不会优化);
聊对前端的看法
项目的难点
人生规划
为什么选择这所学校
你的优缺点(无论是性格,还是跟其他前端应聘者的相比优势,总共说了5,6点,每一点都有具体事例说明。面试官带着神之微笑说,你还很了解自己的吗!?)
总之后面就是各种聊
总结:个人觉得自己还是蛮幸运的。之前也看过网上的一些面经,发现他们的比我难多了。面试的时候,面试官真的蛮重要的。就好比华为实习生面试的的技术面试官人就很好。当然,百度面试的体验也很好。一面的时候,来的有点晚,跑着过去的。到大厅,签到,刚坐下,就轮到我面试。进了面试官房间,自我介绍的时候,还有点小喘息。面试官也很好,他说一面就问基础的,不问其他的。还好在面试百度的时候,自己也经历过了一些面试,总体而言没有那么紧张了。最后自己也很幸运的通过了百度的面试。
腾讯(9月下旬)
技术面(女面试官):
先做一张试卷(10道题,有些深度,还有概率论,涉及蛮广的);做的比较差
试卷题目:
1、将一篇文章的每个单词首字母大写;不改变原有的格式
2、给你一个url,判断是否是同一个域名(qq.com)下的
3、原生ajax
4、angular的优缺点
5、csrf攻击,怎么阻止
6、上线后,如何监控网站
7、概率论问题
8、打不开网站,什么原因造成的,解决办法
9、如何实现跨浏览存储
10、还有一个具体是啥忘了
就试题做的情况简单聊了一下
后面在问了一些就结束了
总结:腾讯之前笔试全是c++,结果这次面试之前先让做一份试卷,也是醉了,也确实可以看出腾讯对应聘者要求懂很多,百度给我的感觉更加注重基础。女面试官全程比较严肃,没有微笑。在我之前的是一个女生,她还在腾讯实习过,最后结束的时候,她问面试官,就这样吗?(她也觉得面试聊得太少了,不敢相信这样就结束了。)面试官说,是的。 所以面试官说就到这里的时候,我也没说啥,知道说了也没啥用。直接背包走人。
远景能源(9月下旬)
没有笔试,直接拉去面试,谁知道面试之前还要做两道算法题,只做出了一道。。。
技术面:
自我介绍
react虚拟DOM为什么有优势,我用原生的为啥就慢,是什么原因;
网站打开比较卡,你怎么优化;
linix知道吗?
对H5的了解;
webscoket会用吗(不会)
对数据库了解哪些?
canvas为什么会出现,用来做什么的;
你们做的项目,用的是什么服务器,或者说在哪里跑(我说后台搞得,我不知道,然后脸色就变了,就这个问题说了一会,说我连这个都不知道......然后面试到此结束,出来直接挂)
总结:所有面试中,面试面的最不爽的一次。首 先面试官态度傲慢,其次面试官坐姿太屌丝了,穿着中裤,脚踩在桌子脚上,一副吊儿郎当的样子,最后面试没问前端的基础,就是各种瞎比比。我的的同学(其他 岗位的),不到3分钟就出来,直接说你不合适,不是我们想要的人。我擦,你好歹面一下吧,人家来了,笔试了,不面直接让走人,我也是醉了。一句话,远景面 试逼格很高,比bat还高。当然也有一个同学面过了,因为研究方向比较符合他们公司。
网龙(9月下旬)
技术面:
自我介绍;
h5的新添加的特性;
css3新增的特性;
如何判断一个页面是H5;
网站性能优化方法
盒模型
ajax原生js实现
为什么选择前端
你是怎么获取前端知识的,遇到问题怎么解决
localstroage和sessionstorage的区别
HR面:
自我介绍
一些私人问题;
为什么学前端,你的专业是机械的
你对自己的规划
你的优势
你手上有哪些offer
你会怎样选择一家公司,会考虑哪些因素
其他一些问题忘了
总结:总体感觉技术面比较简单,也没有那么紧张了。面对面试官的时候,心情很平静。可能是之前已经面过一些大公司了,自己对面试中不懂得也进行了总结,所以问的东西基本都知道。
有赞(10月)
有赞的面试应该是简寻上来的
技术面1:
前端学习方法
看过什么书
跨域的了解,有使用过吗,cors知道吗
闭包
数组去重的方法,说了几种,感觉他不是很满意
事件的绑定取消冒泡等
继承方式
盒模型
创建对象方式
给你一个空函数,加new和不加new的区别
技术面2(视频面,两个人):
有哪些需要nodejs环境(是自己之前说有些依赖nodejs,然后他就问哪些)
为什么来这所学校
找到工作后的规划(主要指在学校这段时间)
es6哪些特性比较吸引你
谈谈研究生生活
为什么选择前端
总结:这个面试是后面补得,之前忘了写...很多问题已经忘了。最后面试没有通过,问题可能出在:不能去实习,还有就是一些开放性问题答得不是很好。逻辑有些混乱。
海康威视(10月中旬)
先笔试,前端题目是java。。。不会,随便写了一些,最后意外获得了面试资格。
技术面:
不用自我介绍,直接介绍自己的优势
盒模型;
怎么解决不同浏览器盒子大小显示不一样问题。
事件机制,捕捉冒泡,绑定事件,阻止默认事件
继承,原型
后序遍历的实现代码(不会)
闭包
h5和css3有了解吗
事件委托机制了解吗
jquery的使用
如何在页面中插入一些数据(appendchild,innerHTML)
HR面
自我介绍
为什么选择前端
以后的职业规划
项目遇到的难点,还有你是怎么解决的
一些私人问题
用三个词形容自己(具体说明)
期望薪资
为什么选择这所学校(研究生学校)
有没有其他offer
总结:技术面10多分钟结束,好像HR面时间还长一些。。。技术面的面试官一个人要面前端,安卓,java,而且还是一早上从杭州赶过来的,也是很辛苦啊。据说当晚就回去了。。。HR姐姐蛮漂亮的,能笑一笑就更好看了。
趣医网(10月中旬)
现场手机测评+加笔试。
技术面1(主要根据简历问):
自我介绍
为什么选择前端
css,ajax的英文名字,ajax可以同步吗
http的端口号,ftp的端口号(说错了)
restful(不知道)
gulp的一些使用
盒模型;
继承,原型
快排实现的原理
position,float的值
cookie和session的关系和区别
本科学了什么语言
c++和js有什么区别
了解哪些算法
栈和队列
H5和css3的新特性
行内元素怎么设置高度(挖坑。。。不能设置,可以设置line-height)
技术面2:
对数据结构了解吗
看过那些书;
愿意做后台吗
平时写的是js还是html(这个问题,前端肯定都写啊)
做一个智力题(没做出来。。。)
HR面
简单了解一些基本信息
为啥学前端
愿意做后端吗?
你会怎样选择一家公司
你觉得我们公司怎么样?(去了宣讲会,但没认真听,说了下蛮好的,然后说不出其他的呢)
期望工作地点,薪资
总结:进去应该还是可以学到很多,做后台我还是愿意的,可以学到很多啊。