浅谈2020web前端面试春招经历

137 阅读2分钟

背景

本人从事web前端开发,断断续续准备几个月,由毕业起在一家非互联网公司工作,用过Vue技术栈,React技术栈,微信小程序来开发。本次尝试跳槽是想看看目前我自己能达到什么水平,期望去大厂。另一个也是想要更高的收入。由于受新冠病毒疫情影响,近两个月的面试都是主要以电话面试和视频面试,其中有也有面试过中大厂。总结出来的体会是自己还不够格去大厂,大厂的面试都十分注重基础,会深入考察基础的底层知识和由此拓展出来的场景。(如promise与async await的区别,怎么结合async await来使用ajax等),还有框架的原理。另一个是大厂会比较注重项目经验,起码要有性能优化相关经验,搭过前端环境,项目有一定的复杂度。技术面也要更加广泛,如对前沿技术的了解。

记忆比较深刻的面试题

框架方面(Vue,React)

  1. Vue的双向绑定原理是什么?
  2. Vue中watch与computed属性有什么区别?
  3. 了解Vue-next吗?
  4. Vue和React的区别?
  5. React关于hooks的了解?与class的写法有什么区别?两者是怎么体现其生命周期?
  6. React16之后有什么变化?(生命周期的改变)
  7. setState是异步还是同步?
  8. 虚拟dom跟真实dom的区别是什么呢?实际上没有那么快?那有什么区别呢?

webpack框架方面

  1. webpack本质上做到了什么?(模块化)
  2. webpack执行的原理是什么?
  3. webpack在构建和渲染上有什么优化方案?
  4. babel设置的plugin和presets的区别是什么?执行的优先级哪个更高?
  5. babel设置有了presets后,为什么还需要plguins?
  6. happypack的使用带来什么影响呢?实际上可能是没有影响的?

性能优化

  1. 重绘跟重排的区别是什么?
  2. 假设for循环一万次,会有多少次重绘和重排呢?如果加上获取其中的高度会有什么区别?
  3. chrome的调试工具有哪些?(debugger source模块下各用法)

其他

总结

总的来说,大厂的要求会更加高,十分考察基础和项目。也通过这几次面试知道自己的差距,接下来要做的就是扎实基础,做复杂度高一点的项目,深入了解业务,并且要熟悉用后台语言(Node等)。写下这次面试心得,愿能帮助其他web前端开发,并勉励自己多学习多摸索。