写点什么

2019 金九银十前端面经总结,牛客视频面试

作者:Java高工P7
  • 2021 年 11 月 09 日
  • 本文字数:3721 字

    阅读完需:约 12 分钟

美港股证券公司,财大气粗,去年秋招的时候面过,当时还拒了。通过 BOSS 直聘联系约面。同样一面跪,主要问了这些问题:


  • var、let、const 区别(这个区别我竟然真的不知道,下来后把阮一峰的书好好翻了一遍)

  • 块级作用域主要解决什么问题(同样翻阮一峰的书)

  • 闭包相关(特别经典的 for 循环有 setTimeout 那道题,以及如何改成想要的结果)

  • this 指向(参考你不知道的 JS 上卷)

  • CSS margin 重叠问题怎么解决(当时还不知道 BFC 这个是怎么用的,用于处理什么问题)

  • 解构赋值和函数默认值一起来问(阮一峰的书有个很经典的例子)

  • Object.create 是怎么实现的(红宝书原型式继承有讲)

  • 手写快排

  • 手写一个多列等高布局

  • http 状态码


面试发挥的很差,不过面试官小姐姐特别有耐心,聊了两个多小时,基本上全程教我写代码,最后斗胆要了下小姐姐微信,这次面试失败对我打击很大,让我严重意识到了自己的不足。正好是个周五,基本上通宵看完阮一峰的 ES6 那本书。


4. 快手


南抖音北快手,虽然我不玩,在网上查了一下面经,据说这家公司超级难。面试先做笔试题,还好之前有准备,两道题没做出来,一道是利用 localStorage 根据请求响


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


应头做一个浏览器缓存的插件,一个是返回给定字符串的全排列结果。一面主要问了这些:


  • display: block、display: inline 和 display: inline-block 的区别

  • CSS 水平垂直居中

  • CSS 画一个三角形

  • flex-basis 这个属性是干嘛的(回答的很差)

  • CSS 多列等高布局,要求取内容最多的高度

  • call、apply 和 bind 区别

  • 手写 bind(没写出来,大概说了下思路)

  • JS 继承每种方式的优缺点

  • Vue computed 的实现原理

  • Vue 生命周期

  • Vuex 怎么使用

  • webpack 了解多少

  • 手写快排


一面确实有些东西不知道,不过一面小哥说会有二面的,顺便蹭了个饭,快手的饭挺好吃的。二面是个秃顶小哥,主要问了这些:


  • 扩展运算符和 rest 参数怎么理解

  • 扩展运算符在 ES5 中怎么实现(这个有印象,但是没写出来,后来被说基础太差了)

  • flex 布局(父元素宽度 300px,两个子元素,一个是 flex: 1 0 100px,另一个是 flex: 2 0 100px,问页面展示是什么样子的)

  • React 和 Vue 的区别

  • React 的虚拟 dom 怎么理解

  • Redux 怎么使用(没用过)

  • 手写 promise(完全不会)

  • http 与 https 的区别

  • 浏览器不同页面怎么通信(答曰 localStorage,面试官不满意)


二面还是暴露了些问题的,等了半小时,二面小哥告诉我技术栈不符合,培养成本较高,还让我好好看下 ES6 的代码转成 ES5 后的结果。虽然被拒了,不过也没那么伤心,面试前安慰自己能撑过一轮就是赚了。


5. 百度


百度是百度网盘部门,不在百度大楼,在鹏寰大厦。去年校招也收到百度面试,不过因能力问题没有敢去。一面是个小姐姐,主要问了这些问题:


  • 浏览器输入 url 到渲染页面做了什么工作(我不到 1 分钟说完了,小姐姐说你可以说的再细一点吗,然后引导我,我表示全程懵逼,原来还可以这么细,第一题就聊了半个多小时,当时已经没心情回答后面的了)

  • CSS 水平垂直居中

  • CSS 清除浮动

  • CSS 实现一个简单动画

  • JS 继承相关及优缺点

  • http 缓存

  • cookie、sessionStorage 和 localStorage 的区别


一面面到这里心里凉了半截,已经做好回家复习的准备了,小姐姐说暂时联系不到二面,要不让我回家等通知。绝望中走了 1 公里,接到电话说可以面一下二面,遂小跑回去等待二面。二面是个小哥,他老婆竟然是我上家同事,二面主要问了这些问题:


  • 线性表、链表、二叉树、图的算法了解多少(卧槽我一个都不知道,小哥满脸尴尬……)

  • http 和 https 了解多少,通信时的加密情况

  • Vue 的生命周期

  • Vue 的双向数据绑定实现原理(不会,虽然之前被问到过)

  • 设计模式了解多少(吹了一波观察者模式,结果漏洞百出)

  • 如何创建 BFC


二面后来跟小哥坦白了,数据结构很多都忘了,说了很多自己学习技术上的事。小哥选择给了个友情三面。


三面是百度网盘的负责人,是个女的,感觉之前在哪里见过,技术的东西没有聊,聊了很多前端学习路线上的事,针对我的离职原因教育了我一番(我不是说的裁员),并表明评级不到 t4,社招是没有 t4+以下的 hc 的,让我再努努力,希望下次再来面百度的时候可以收获 offer。在这里还是感谢下百度的三位面试官,确实我和他们的差距不是一般的大。尤其一面的小姐姐,就一道题让我学到了很多很多,也为我后面遇到类似题目埋下伏笔。


6. 贝壳金服(理房通)


给贝壳做支付的,金融公司,财大气粗。自己在 boss 上联系的,抱着试试看的心态来面试的。他家面试一共 5 轮,2 轮技术,1 轮合伙人,1 轮 HR,最后又来了 1 轮电话技术面。一面直接让看一套笔试题,然后告诉他答案,此外还问了这些问题:


  • CSS 水平垂直居中

  • 怎么创建 BFC 及其解决问题(前面面过)

  • 清除浮动

  • 深拷贝当遇到引用类型为 Function 时怎么办(当时懵逼了,不记得有问 Function 的,一般都是问 Array 或 Object,答案是直接浅拷贝 Function 即可)

  • this 指向

  • React 的 componentWillMount 和 componentDidMount 有啥区别(React 我不知道,给他介绍了下 Vue)

  • React 的 key 是用来干嘛的(同不知道,猜测跟 Vue 是一样的功能)

  • Redux 怎么使用(同不知道,吹了下 Vuex)

  • 平时开发时 git 操作流程


一面虽然有些 React 的东西不知道,但是面试官还是给了二面。二面是个架构,问的东西基本全是网络相关,具体如下:


  • http 和 https 的区别

  • http 缓存

  • tcp 和 udp 的区别(这个不知道)

  • linux 命令了解多少

  • 项目部署发布流程


二面的面试官不太懂前端,我也不太懂网络,不过跟他说了说我项目中的一些优化操作,还是给了后面的面试。隔了 3 天接到电话说还有一轮电话面试,电话面试主要问了这些问题:


  • Vuex 怎么使用

  • 深拷贝遇到死循环怎么办(a 对象有 b,b 对象又有 a,当时回答不太好)

  • rem、em 和 px 的区别

  • CSS 实现多列等高布局

  • 怎么理解 mvvm


除了死循环那个,别的回答的都不错,也是第二天就接到了 offer,第一个 offer,内心感慨:找工作真难啊。


7. 蛋壳公寓


长租公寓,我现在住的就是蛋壳公寓。公司 HR 统一内推的,技术面一共三轮。一面主要问了这些问题:


  • 跨域解决方案

  • CSS 水平垂直居中

  • 清除浮动


一面小哥很年轻,问的东西也比较少,聊项目偏多。二面来个大叔,气场十足,主要问了这些:


  • JS 继承

  • Promise 使用方法

  • Vue 生命周期

  • Vue 组件通信

  • VueRouter 的 histroy 模式和 hash 模式的区别


二面问的东西偏实际了一些,二面透露他们的项目有 Vue 和 JQuery 混搭的风格。三面是个领导,隔了三四天约的三面,主要问了这些:


  • http 性能优化

  • http 缓存相关


其余的都在问个人平时怎么学习的,感觉蛋壳面试相对轻松,可能是因为工作经验的关系,并没有给我发 offer。


8. 一点资讯


看新闻的平台,跟头条类似。之前约面放过 HR 鸽子,电话解释了半天,同意再给个机会,技术面 3 轮,1 轮 HR 面。一面小哥胖乎乎萌萌哒,主要问了这些问题:


  • html5 语义化标签的好处

  • 用语义化标签手写一个导航栏布局(语义化标签忘了,用 ul、li 实现,被小哥说了很多细节上的问题,确实后台代码写多了,不会去注意这些)

  • CSS 垂直居中

  • CSS 实现文本三个点(知道有 3 个属性控制,但是忘了其中一个)

  • CSS 实现一个带小尾巴的对话框(之前研究过类似的,用伪元素好一些)

  • 数组去重的多种方法实现

  • v-if 与 v-show 的区别(这几天的面试中第一次问)

  • 手写快排


一面我还可以 hold 住,万万没想到的是二面。二面小哥比一面小哥看上去还年轻,主要问了这些问题:


  • 动态规划计算从左上角到右下角数组路线中和最少的一条(直接放弃,跟小哥说思路,小哥说有思路就能写代码)

  • 手写 bind(之前看过视频,但是一紧张忘光了,我写了 4 遍吧,每次小哥都说能不能写好看一点,或者说有语法错误,后来放弃,被小哥疯狂针对)

  • call、apply 和 bind 的区别

  • this 指向(还是注意箭头函数)

  • 手写 class 经过 babel 编译成 ES5 的代码(还要考虑静态类,静态方法,小哥说可以不考虑这些,写了一版,被说有错误)

  • 手写 Object.create(我按照书上写的,结果还说不对)

  • 手写节流防抖(同样跟小哥说思路,小哥说有思路就能写代码,后来瞎写的,让小哥教我写了个防抖)

  • 手写冒泡排序

  • 手写快排(我说一面写过了,问我有没有可优化的地方,没想出来)

  • http 缓存相关

  • 怎么精确获取一个 div 的位置(我就知道这一个,之前做过拖拽,吹了一会,结果小哥说你的方法不太好,尴尬。。。)


二面快结束的时候,我就问小哥,你们到底要啥样的人,小哥说啥都要,他说简单的同事之前跟他反映过了,他就不问了,他同意有三面,我很诧异,直接问他啥都不会都能有三面吗?小哥答曰:还可以吧。三面来了个领导,跟他闲聊直接问起我上家公司的领导,套了套近乎,不过面试起来还是比较犀利的:


  • 手写插入排序(一言不合就手写,还好我之前在公司分享过)

  • 手写归并排序(这个太长了,记不住,说了下思路,面试官表示理解了)

  • Vue 封装组件的流程


其他的基本就是在聊一些项目中的优化问题,简单说了下我这边都是通过减少请求对其进行优化。本来想放弃,没想到让我等下 HR 面,HR 面多夸了夸这几位面试官和公司环境,说了下自己确实能力还不够,还有待提高,并再一次对之前约面放鸽子事件表示抱歉。没想要 HR 竟然主动加我微信,两天后的周四,跟我说同意发放 offer,我欣喜若狂。


9. 用友


做 ERP 起家,老牌软件公司。被分到了用友医疗这个子部门,技术面就一轮,主要问了这些问题:


  • CSS 盒模型及盒模型通过什么属性切换

  • CSS 水平垂直居中

  • CSS3 新特性用过哪些

  • JS 基本数据类型

  • 怎么区分 Array 和 Object

  • 深浅拷贝怎么实现

  • 对于闭包的理解

用户头像

Java高工P7

关注

还未添加个人签名 2021.11.08 加入

还未添加个人简介

评论

发布
暂无评论
2019金九银十前端面经总结,牛客视频面试