一面(电话面)
-
自我介绍
2. 为什么想离职?
3. react hooks 有哪些优缺点?
4. useLayoutEffect 和 useEffect 区别是什么?
5. 有接触过哪些移动端跨平台框架?说下jsBridge?
6. 说下react-native的原理,原生端和js端是怎么通信的?
7. flutter有了解过吗?为什么说它的性能可以媲美原生?它有什么缺点吗?
8. 如果一个项目要用移动端跨平台框架开发,你会选择哪个?
9. 工作中遇到过的最难的问题是什么?最后解决了吗?怎么解决的?现在觉得有没有更好的解决方案?
10. 反转单向链表怎么做?需要几个指针?都有什么作用?
11. 你有什么要问我的吗?
二面(现场导师面)
1. 自我介绍
2. 为什么想离职?
3. Vue 和 React的区别是什么?你觉得哪个好?
4. redux主要解决了什么问题?它的工作原理是什么?与mobx的区别是什么?你觉得redux 和 mobx哪个更好?
5. react中state有层级很深,比如a.b.c.d,如果只更新c属性有哪些办法?immutable.js实现的原理是什么?
6. 说下crsf 和 xss,分别举例说明,各有什么解决办法?
7. Cookie的同源策略是怎么样的,跨域情况下如何携带Cookie(这里主要考察了SameSite问题,因为我crsf问题没答到这点)
8. 有用过哪些跨平台框架,react-native中原生端和js端怎么进行通信的?
9. 假设有一个非常复杂耗时的逻辑,代码逻辑已经最优了前提下要你优化,你有哪些办法?(这题其实是考察WebWorker)
10. 说下浏览器的进程、线程模型,chrome浏览器有多少个进程?线程模型中的每个线程都是干嘛用的?
11. 说下 js的内存泄漏,什么情况容易出现内存泄漏?怎么解决?垃圾回收机制是怎么样的?
12. 自己的项目做了哪些性能优化?除了webpack打包之类的优化外,http层面有做了哪些优化?gzip如何开启?gzip有多少个级别?
13. 用二分法移除掉一个字符串中所有的字母字符。
14. 有什么要问我的?
三面(现场组长面)
1. 自我介绍
2. 为什么离职?在之前的公司什么部门?公司的主营业务是什么?
3. 随机生成100w正负整数存储下来,记录时间t1;然后把这100w数据中的负数全去掉,记录时间t2;然后记录总共耗时t3 = t2 - t1。
4. 在耗时t3的基础上优化下,使t4的耗时只有t3的70%; 在t4的耗时基础下再优化,使t5的耗时只有t4的70%...
5. 说一下输入一个url地址后的全过程?dom渲染那块描述过于简单,能否说的更详细点?react中的diff算法的原理?传统的diff算法是怎么实现的?
6. 说出一个react的特性?它的原理是什么?(我答的fiber)
7. 你们的前端项目主要用的是ES版本是多少?说出ES7中的3个性特性并说出应用场景?说出ES8中的三个新特性并说出应用场景?
8. WebWorker有了解过吗?它有什么应用场景?刚刚的算法题可以用这个进行再次优化吗?
9. 为什么说https是安全的?https的证书校验过程是怎么样的?(这里一定要说的非常非常详细)证书校验用到了哪些算法?
10. https一定是安全的吗?(考察https中间人劫持),有什么解决办法?
11. 说出http2中至少三个新特性?你们有在实际中用过吗?
12. 你有什么要问我的吗?
四面(交叉面)
交叉面和一面差不多,这里就不重复了。多问了http缓存机制问题,然后问了一下: 浏览器的默认缓存时间是多久?
五面(总监面)
1. 自我介绍
2. 为什么要离职
3. 要你设计一个前端监控方案,你打算怎么做。
4. 平时喜欢听歌吗?用什么音乐app?(我答的以前用网易云,现在用Q音),这两个各有什么优劣势?
5. 对于你来说,你觉得做音乐app中最大的技术难点是什么?
6. 在技术上,你对自己以后有什么规划?
7. 你有什么要问我的吗?
六面(hr面)
这里就不一一列了,就是问哪里人、以后的发展,拿了几个offer,都是哪家的,介绍了各种福利之类的。
总结
整体难度适中,但是面的轮数多,流程非常长。但是最后综合考虑了各方面,还是选择去了Shopee。
本文转载自:反向人,版权归原作者所有,本博客仅以学习目的的传播渠道,不作版权和内容观点阐述,转载时根据场景需要有所改动。
最新评论