百度前端一面面经
自我介绍
1、讲一下你认为的什么是优美的代码,有哪些实践,项目紧急时,舍弃哪一个(健壮,复用性,优美)
eslint
这里我嘴贱说舍弃复用性,面试官说我没经历过大量项目需求的压力,不能舍弃复用性
2、设计模式
讲了下发布订阅模式,他没细问
3、闭包,原理,常用场景
当时有点紧张,乱说一通,,,
4、手撕代码,实现call,
function b(){} function.prototype.call1 = function (that, ...pars){ this.bind(that)(...pars) }
我总觉得有问题
4.2 手写 son 继承 father
var son = function (name) { this.name = name } son.prototype = new father() son.prototype.constractor = father
5、手撕代码,前序遍历二叉树
前面强行写的,代码可读性不好,而且有点冗余,解释了好久
后面他要求用递归
6、手撕代码,手写快排
他说我应该没问题(???你很了解我吗?)
还好以前写过
6.1、两边固定宽度,中间自适应
先用flex,
他说不能用flex
后面用position
然后他笑了,直接让我用float
我说我不会,尴尬
7、讲一下https
这个问题我研究了好久还跟同事分享过,一被问到就大脑空白,太悲催了
最后他问一句我答一句,整个过程拼拼凑凑
8、express中间件
简单过了一点中间件
9、会写小程序吗?
我:写过
》讲一下xxx
我:不知道
10、讲一下函数作用域和块级作用域
这个讲了下 var 和 let 的区别,var声明提前,初始化提前,let 声明提前,初始化未提前
11、js事件流,
这里我讲的浏览器的微任务,宏任务,node 我主动说的不知道,淦
12、项目中使用插件的时候有没有对比其他插件,引用别人的代码有没有看别人怎么实现的?
这里面试官耐心跟我讲,别人的代码不能轻易引入项目,它就像一个黑盒子
最后
面试时一度很紧张,小哥哥一直说没关系没关系,泪目。
#百度补招##百度##校招##前端工程师##面经#