总结下最近的几场大厂前端实习面试

背景

博主目前已经接到快手offer,即将启程下一段实习了,我会将最近的几场面试题都整理出来,供大家学习参考,也可以让大家了解目前大厂面试题题型的转变。

快手一面

令我感叹的是,几场面试下来感觉八股都不多了,更多的都是场景题。

八股部分

  1. js数据类型,如何判断,几种判断数据类型的方法,并且说他们的优缺点
  2. bfc
  3. 盒模型(块级盒子和内联盒子的区别)
  4. 异步任务(介绍为啥js是单线程并且为啥有异步任务即可)

开源组件库部分

因为简历上写了一个参与开源组件库的项目,面试官就问了

  1. 如何做到ssr的
  2. 书写组件有什么注意点(就是客户端渲染还是服务端渲染)
  3. 介绍为什么有上面那些区别和注意点(服务端不能操作dom)
  4. 如何做到样式管理(bem)

项目部分

简历上自己搭建了一个全栈的admin项目,就问了下,让我介绍

  1. 怎么做到的前端限流(维护一个最大队列)
  2. 无感刷新(用的双token)
  3. tailwindcss,响应式(介绍,优缺点)
  4. websocket(介绍,深问了其他细节都常见的,比如我用的ahook的useWebsocket但是不支持心跳检测,如何去手动封装的)

手撕题

手撕深拷贝(主意循环引用用weakmap解决,还有对基础数据类型和null这种类型边界的处理)

算法题

三数之和(leetcode中等难度,用双指针就可以a)

蔚来一面

蔚来八股就比快手多了,怪无聊的

实习

问我在上家公司(石墨文档)做了哪些事情,比如权限设计,按钮权限等等,细问了rbac模型

八股

  1. ts泛型,泛型工具
  2. type和interface区别 可不可以拓展,如何拓展 能不能继承,继承后ts转化成js的代码
  3. js继承(原型链继承,构造函数继承,寄生组合继承,类extends)extends转化成es5的代码
  4. js数据类型,细问了引用数据类型和基础数据类型区别,我说存储位置(这里我细讲了),但是她说不是想要的答案,不清楚她想要啥,还有null历史原因导致的错误,问的挺细的。
  5. vite和webpack区别(从commonjs和esm出发说,还有vite双引擎架构,构建过程等等)这里问的也挺细的
  6. react组件通信(props,ref,context,store)介绍了context优缺点,场景
  7. react生命周期(不用类组件,不知道)

其他的记不得了

开源和项目看都不看也不知道为什么

手撕题

很巧,上午面的快手,下面面的蔚来,手撕题都出了同一道,深拷贝

算法题

千分位分割

想让我用正则做,不熟我就暴力解决了,期间有个位置符号顺序反了,卡了一下下,其他没啥问题,挺简单的,就esay难度

快手二面

二面纯纯考验代码功底,侧重考察软实力(平时如果代码写的不多的要小心了,大概率很难受)

前十分钟给我介绍业务,大概一面发挥太好了,直接想要我了(自恋一下)

实习

代码质量,代码规范,git workflow, 性能优化,组件封装。大致这几个方面

  • 代码规范: eslint,stylelint,commintlint,husky,ts
  • 代码质量: 函数抽离,设计模式,代码复用,解耦
  • 性能优化: memo,useMemo,useCallbak(都问了原理,这里要好好记,重点!),为什么要用(介绍了业务场景)
  • 组件封装: 我举了前段时间写的那个通用可编辑组件,面试官给了一些指导,问了为什么不要antd的(解释公司内部二封过antd的表格组件,不支持可编辑,而且想做一个通用的)
  • 现场屏幕共享,给面试官介绍一段自己写的比较好的代码(用的公司电脑,没什么代码,直接看了项目代码,没举好例子,汗流浃背的,给了我一些思路)

主要就是软实力吧,侧重考察代码能力

说一件搞笑的事情,在我面完第二天,我封装这个可编辑组件的问题,后面面试的人手撕题就换成了手撕一个可编辑表格组件(今天跟一个友友聊天才得知的,不能怪我,谁也不知道他们出题这么老六😂)

后面快手就offer了,就接下了。 蔚来算了,进度慢不说,感觉问题奇奇怪怪的,一股八股味

总结

挺感叹的,作为一个非科班的学生也能进大厂了,挺梦幻的,拿到offer的那一刻,激动坏了。也感叹现在面试出题比较灵活,更加考察场景了,另外,有段不错的实习经历再去冲大厂实习,会加分很多,石墨这段实习确实在我面试的时候帮我了很多。接下来就要迎来自己的第一趟大厂之旅了,希望看到这份面试经历的友友也能去到自己心仪的公司。

相关推荐
小马哥编程27 分钟前
Function.prototype和Object.prototype 的区别
javascript
小白学前端66627 分钟前
React Router 深入指南:从入门到进阶
前端·react.js·react
web130933203981 小时前
前端下载后端文件流,文件可以下载,但是打不开,显示“文件已损坏”的问题分析与解决方案
前端
王小王和他的小伙伴1 小时前
解决 vue3 中 echarts图表在el-dialog中显示问题
javascript·vue.js·echarts
学前端的小朱1 小时前
处理字体图标、js、html及其他资源
开发语言·javascript·webpack·html·打包工具
outstanding木槿1 小时前
react+antd的Table组件编辑单元格
前端·javascript·react.js·前端框架
小k_不小2 小时前
C++面试八股文:指针与引用的区别
c++·面试
好名字08212 小时前
前端取Content-Disposition中的filename字段与解码(vue)
前端·javascript·vue.js·前端框架
摇光932 小时前
js高阶-async与事件循环
开发语言·javascript·事件循环·宏任务·微任务
隐形喷火龙2 小时前
element ui--下拉根据拼音首字母过滤
前端·vue.js·ui