百度前端三面面经+百度外卖一二面面经(武汉)
之前笔试基本各种挂,挂的怀疑人生,阿里腾讯网易美团全部挂在了笔试,因为我的操作系统和C++,java学的太烂了,美团甚至考安卓和iOS。
考完滴滴的笔试后,我差点儿在图书馆哭了出来,当时就想我真的有这么菜吗?连个面试的机会都得不到?当时几乎处于一个崩溃的状态,已经对秋招绝望了,打算等补招或者找个实习了。
后来百度HR打电话通知我一面,我当时真的很激动,也很珍惜面试机会。
首先是百度,百度的面试很难,但是很基础,问的很详细。
一面是一位性格很好的面试官哥哥,而且还和我是老乡,一面面了70多分钟,问了很多东西,很多我不记得了,我挑我记得的写吧。
1、手写jsonp的实现
2、手写链表倒数第K个查找
3、http请求头,请求体,cookie在哪个里面?url在哪里面?
4、垂直居中,多行文本垂直居中
5、原型链的解释
6、对闭包的理解,实现一个暴露内部变量,而且外部可以访问修改的函数(get和set,闭包实现)
7、{}=={}? []==[]? null==undefined?
8、基本的数据类型
9、基本的两列自适应布局
10、unix中常用的命令行
11、OSI模型,HTTP,TCP,UDP分别在哪些层
12、网站性能优化
13、解释平衡二叉树,以及在数据结构中的应用(红黑树)
14、快排的时间复杂度和空间复杂度。
一面问的基础知识很多,但是基本都答出来了,面完后有些蒙逼。
二面是一位女面试官,给的压力很大,人比较严肃,不苟言笑,后来听说二面是压力面,二面问了50分钟。
1、手写一个jQuery插件
2、在jquery方法和原型上面添加方法的区别和实现($.extend,$.fn.extend),以及jquery对象的实现(return
new jQuery.fn.init)
3、手写一个递归函数(考察arguments.callee,以及arguments的解释)
4、对前端路由的理解?前后端路由的区别?
5、介绍一下webpack和gulp,以及项目中具体的使用
6、你对es6的了解
7、解释一下vue和react,以及异同点
8、关于平衡二叉树
9、前后端分离的意义以及对前端工程化的理解
10、使用css实现一个三角形(盒模型border和css旋转两种方法,主要考察css3旋转)
11、用promise手写ajax
12、手写一个类的继承,并解释一下
13、解释一下call函数和apply函数的作用,以及用法
二面面完后我很虚,感觉自己答的不是很好,路由和前后端分离答的不好,旋转画三角形也没画出来,有可能挂了,但是没想到当天下午就收到了三面的通知。
三面也是一位哥哥,过程还算轻松,也面了50多分钟,不知道结果如何
1、介绍一下自己
2、你说自己抗压能力强,具体表现在哪里?
3、对前端前景的展望,以后前端会怎么发展
4、手写第一次面试没有写出来的链表问题,要求用es6写
5、平时是怎么学技术的?
6、平时大学里面时间是怎么规划的?
7、接下来有什么计划?这个学期和下个学期的计划是?
8、项目中遇到的难点,或者你学习路上的难点
9、你是通过什么方法和途径来学习前端的
10、手写一个简单遍历算法
11、解释一下react和vue,以及区别
12、你在团队中更倾向于什么角色?
13、对java的理解
14、介绍node.js,并且介绍你用它做的项目
最后问我有木有问题问他,我就问:
1、百度加班多吗?
面试官:百度加班并不多。
听说糯米加班多?
面试官:糯米已经从百度独立出去了,我也听说了是996,不过那应该是边缘部门
2、前端以后会朝哪个方向发展?
面试官:就像你刚才说的一样,单页面应用会继续火,react和vue接下来几年依然会流行,webpack和gulp这些工具也会变得更加简单,后端的逻辑会更多放到前端来做
3、百度内部的技术栈是什么?
面试官:我们有的用很新的技术,有的用老技术,看部门吧,不过我们很多东西都是自己写的。
我知道你们的fis。
面试官(笑):fis已经是好几年前写的了。
3、多久才知道面试结果?
面试官:三天内会通知。
而且根据我的观察,一面的时候等候厅里面很多人,大概有100+,二面的时候却只有三四十人了,三面的时候不到15个人,所以我觉得前两面还是刷了很多人的。
总结就是,如果你前一面没有答好的问题,下一面依然很可能问你,所以做好总结。
百度外卖从百度里面独立出去了,本来今天让我三面,因为他们明天就要离开武汉了,但是今天有百度的三面,只能放弃外卖选了百度。
一面是一个女面试官,很严肃,态度很差,还玩手机,导致我对外卖的印象很差很差。
1、介绍自己
2、手写一个js的深克隆
3、for函数里面setTimeout异步问题
4、手写归并排序
5、介绍自己的项目
面试我一开始我就想离开了,因为面试官态度太差了,我当时就想说怪不得连百度都要把外卖卖给美团,这面试官的素质。
本来觉得自己挂了,但是过两天收到了二面的通知。
二面是一位人很好的哥哥,问的也挺难的,也让我对外卖改观了。
1、实现两个数组的排序合并,我一开始先合并再排序,他不乐意,然后我用了类似插入排序的方法。
2、手写一个原生ajax
3、手写一个promise版的ajax
4、手写实现一个promise(不会)
5、手写实现requireJS模块实现(想了半天才想到createElement("script"),配合异步来加载,闭包导出)
6、手写实现jquery里面的insertAfter(结合nextSibling和insertBefore来实现)
7、react和vue的介绍以及异同
8、AMD和CMD,commonJS的区别
由于我之前百度二面过了后给了自己极大的信心,所以觉得百度外卖的二面也无压力,应该过了,然后当天晚上就收到了外卖HR面的通知,总之,觉得外卖更加偏向底层的源码,以及实践,这点儿和百度完全不一样。
9月前后自己就像咸鱼翻身一样,本来被笔试挂的怀疑人生,到后来一路杀到了百度三面,外卖三面,乐视三面,我觉得自信真的很重要,面完百度后我觉得自己面其他的公司都很随意了,希望牛客网上其他的小伙伴不要那么早放弃,最后来的才是最好的!!!!