猿辅导 - 前端面经(2022)
秋招季即将到来,发一下本该去年发的面经,供大家参考,预祝大家秋招顺利!
一面
- 自我介绍
- 登陆注册怎么实现的
- 为什么用jwt不用cookie
- 前端发送密码做什么处理了吗
- jwt需要每次携带吗
- CSS中选择器的优先级
- 如何选择前三个子节点
- 属性有几个关键值
- initial
- inherit
- unset
- revert
- BFC
- 解释一下清除浮动
- MAX_SAFE_NUMBER
- 53这个数怎么来的
- 闭包
- 执行上下文与作用域链
- 执行上下文包含的内容
- script标签中async与defer的差别
- 前端路由
- history模式如何做到前进后退功能
- pushState与replaceState会触发相应事件吗
- 调用pushState会触发hashchange,popState吗
- 代码题:代码执行结果
- 数字证书在HTTPS中的作用
- cookie中sameSite属性
- httpOnly的作用
- 协商缓存与强缓存的作用
- 协商缓存与强缓存中请求与相应的header
- webpack有了解吗
- 样式的代码如何配置loader
- 手写题:实现深拷贝(基本数据类型、Object、Set、Map)
- 手写题:找出数组中第k大的元素
- 反问
- 哪些地方需要进一步提升
- 技术栈
- React
- 新技术的态度
- 什么时候通知结果
二面
- 自我介绍
- 以后是要做前端吗
- 举一个例子说明一下表达能力强的特点
- 举一个具体的例子
- 平时如何学习前端知识
- css写的多吗
- 常用布局方案
- 介绍一下flex常用属性
- 说一说flex容器属性
- 写一个css布局的题
- css中如何隐藏一个元素
- display、visiblity、z-index、设置绝对定位再移出屏幕、size:0
- 原型链,看程序说结果
- 改一下题,说一下结果
- 二者有何区别
- 平时用的Vue
- 说一下Vue的原理
- v-show 与 v-if 的区别
- vue中改变数据的时候如何变成前端的UI
- 如何学习到这些原理的?
- 读过源码吗
- Vue中访问原生DOM的节点
- 没有API吗?
- 不知道
- Vue生命周期函数有哪些
- 会看一下算法题吗
- 手写:最长不重复子串
- 反问
- 部门的业务
- 技术栈
- 哪些地方需要提升
三面
- 项目中做了哪些比较有挑战性的项目
- 视频流性能确认
- rtsp、rtmp的区别
- tcp、udp的区别
- udp能保证按序准确传输吗
- 为什么有electron还要用Qt呢
- websocket传视频遇到了什么问题
- 的确有难度,涉及到了electron在内存中单次读取的问题,但其实可以搞定的
- 遇到了什么难攻克,但又成功的事呢
- 关键帧和参考帧是什么样的机制
- 为什么要这么设计呢
- 如何评价系统的性能
- 手写:最大岛屿面积
- 反问
- 部门
- 前端更重视什么场景
- flutter有使用吗
- 对于新兴技术的态度
- 公司希望前端工程师专精还是全栈方向发展呢
- 视频流的方案
- rtp rtcp
面试体验
- 面试官很认真,会就不同的问题记录你的回答,所以反问的时候不要提同样的问题
- 面试官所在部门与你将要入职的部门完全无关,直到发offer的时候才知道具体的部门
- 最后一面是leader面,面试官很愿意在宏观的层面与面试者展开讨论,面试者独特的理解会加分,但也会询问技术问题和手写题,所以扎实的基础很重要。
主观评价
- 猿辅导在开始的几年发展不错,但由于众所周知的原因,在2021年受打击较大,现在据称恢复的不错
- 猿辅导内部氛围不卷,待遇也不错,对教培没有疑虑的同学可以考虑考虑