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

背景

博主目前已经接到快手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的那一刻,激动坏了。也感叹现在面试出题比较灵活,更加考察场景了,另外,有段不错的实习经历再去冲大厂实习,会加分很多,石墨这段实习确实在我面试的时候帮我了很多。接下来就要迎来自己的第一趟大厂之旅了,希望看到这份面试经历的友友也能去到自己心仪的公司。

相关推荐
清灵xmf17 分钟前
TypeScript 类型进阶指南
javascript·typescript·泛型·t·infer
小白学大数据24 分钟前
JavaScript重定向对网络爬虫的影响及处理
开发语言·javascript·数据库·爬虫
qq_3901617732 分钟前
防抖函数--应用场景及示例
前端·javascript
334554321 小时前
element动态表头合并表格
开发语言·javascript·ecmascript
John.liu_Test1 小时前
js下载excel示例demo
前端·javascript·excel
Yaml41 小时前
智能化健身房管理:Spring Boot与Vue的创新解决方案
前端·spring boot·后端·mysql·vue·健身房管理
PleaSure乐事1 小时前
【React.js】AntDesignPro左侧菜单栏栏目名称不显示的解决方案
前端·javascript·react.js·前端框架·webstorm·antdesignpro
哟哟耶耶1 小时前
js-将JavaScript对象或值转换为JSON字符串 JSON.stringify(this.SelectDataListCourse)
前端·javascript·json
getaxiosluo1 小时前
react jsx基本语法,脚手架,父子传参,refs等详解
前端·vue.js·react.js·前端框架·hook·jsx
理想不理想v1 小时前
vue种ref跟reactive的区别?
前端·javascript·vue.js·webpack·前端框架·node.js·ecmascript