我是一位转专业的同学,我的本科和硕士都是读的交互设计。是从24年3月份开始系统学习前端的,目前在阿里巴巴打怪升级同时备战秋招横中。本次二面持续60多分钟。
本次面试整体还是很顺利的,面完第二天就通过了。但是本次面试其实拷打得蛮深入的,暴露出我对一些更加深内容还是没有清晰把握。不过总算是打破字节二面不过的魔咒了!!
面试内容
- 说说你研究得最深的开源库、框架或者组件
- 介绍一下react fiber的实现
- 你了解虚拟列表的实现吗?
- Redux是怎么实现状态管理的?
- Redux thunk是怎么实现异步的?
- Redux thunk怎么去避免多个action的冲突?
- react中如何实现双向数据?
- react hooks和Reudx的区别
- react为什么提出hooks,它主要解决了什么问题?
- 你觉得还有什么方式可以让你之前开发的项目加载得更快吗?
- 说说tree sharking的实现方式
- 为什么tree sharking一定要依赖静态结构,在ES6之前tree sharking是怎么实现的?
- 假设要你在node端实现一个临时的状态记忆,例如记录用户在表单里填写的内容,你会怎么实现?
- 如果这个数据还需要定期清空呢?
- 除了存到数据库,还有其他方式存储信息吗?例如用户量很大和很小的时候有什么差别?
- JSON数据是存在什么地方呢?
- 关系型和非关系型数据库有什么区别?
- 哪种的检索速度会更快呢?
- 你了解哪些身份认证机制?
- 用cookie和token登录的区别是什么,分析一下他们的优劣
- token天然支持跨域,那这样不是更加不安全吗?
- 你目前做过的项目里面哪个最有挑战性?
- 你提到你修改了一个开源库并放在项目中使用,那如果这个开源库更新了之后怎么办呢?
- 算法题:写一个限流函数,控制他的函数的执行次数
学习材料
想要参考我的学习材料的同学欢迎访问这个博客:【学习心得】前端学习材料分享(含八股文)
最后希望大家可以点赞关注一下,后续的面试内容我也会持续更新。也欢迎果大家在评论区中提问自己感兴趣的问题,我会分享我面试时的回答!