视频面试
- 讲讲node的事件驱动?
- node事件循环和浏览器事件循环的区别?
- 下载文件的实现?如何实现每次下载只下载3个文件?
- react循环列表中,key的作用
- 判断一个元素进入可视区的方法,使用ES6的API和手写实现
- 异步方案都有哪些?
- 箭头函数的特性?为什么要使用箭头函数?
- vue2的diff算法?
- 浏览器渲染流程?
- 说说小程序的分包?
- 讲讲缓存?
- 类数组?
- webpack在项目中的优化方案?
- 虚拟滚动实现原理是什么?
- require和import和区别?
- 虚拟DOM
- 说说使用WebSocket
- useEffect和useLayout的区别?
- React中diff的实现?
- 如何实现视频推流的?
- 为什么选择了electron,解决了什么问题,有没有其他方案可以实现桌面端?
- APP消息推送中,如何实现保证了推送的顺序是不变的?
- JS事件循环?
- transition中,缩放,旋转,位移这些的顺序发生了改变,那界面上的效果也会发生变化吗
- BFC是什么?
- http的请求方式有哪些,option的作用是什么?
- node在什么上运行?
- node的执行流程?
- 在项目中做的优化有哪些?
- vite为什么启动那么快?
- http2和http1相比有什么优势?
- webpack和vite的区别?
线下面试一
- 后台管理权限相关的问题,比如A进入后台管理有两菜单,B进入菜单有三菜单,这个是如何处理的,在什么时候去获取路由;
- 对于一个用户,他进入了没有权限的路由,是如何处理的
- vue2和 vue3 的数据传递
- 讲讲深拷贝和浅拷贝
- 说说浏览器的渲染机制
- 修改对象中数组的某个值,修改完后界面没发生变化,应如何解决;界面强制刷新,原因是什么?
- ref和reative的区别?
- let、const、var 的区别
- 数组中,使用for和forEach 去过滤某个元素,使用哪个更好,区别是什么,forEach是否能停;
- this知道哪些?函数中的this指向哪里;
- 匿名函数中的this指向哪里
- 地图有用过吗?
- linux基本命令有使用过哪些?
- echarts常用的属性?
- 学习平台有哪些?
- 使用的布局,上中下布局,中间高度占满整个屏幕剩余的空间,如何实现?flex布局flex-grow 可以撑开剩余空间;
- 横向布局 5块平均分开,用什么属性
- 5块水平居中 最后一个单独从上到下排列,如何实现;
线下面试二
- 说说对react的理解
- 为什么react的虚拟dom提升了性能
- 说说虚拟dom的缺点?
- react的diff算法是如何去比对两个虚拟dom的
- 提高diff算法性能的方法有哪些
- react中对事件的处理?
- 说说react中setState执行的原理,在什么时候刷新屏幕?
- 用D3做了什么
- echarts用过哪些东西
- react项目中如何解决项目白屏的问题?
- react中refs的作用?
- 说说Redux,他的工作原理是什么?
- react项目中使用hooks实现一个全局弹框,如何维护状态?
- react在使用过程中有什么缺点?
- 实现断点续传的完整思路,上传一半电脑断电,另一个电脑重新上传,如何实现?
- vue3相对vue2在优化改进的地方?
- ref和reactive的区别
- reactive的变量给整体替换,如何实现
- vue2的mixin和vue3的hooks的区别
- css3的一些特性
- flex布局
- 跨组件通信,非父子组件,如何实现的,跨dom的通信如何通信,用事件总线行不行?
- vuex存储在浏览器的什么地方?
- vuex和pinia的区别
- 浏览器同域和不同域的窗口中,sessionStorage和localStorage的共享情况
- setInterval和setTimeout各有什么优势
- setInterval有什么缺陷?
- 对某个词的高亮,如何实现? 文章里面有词ABC 高亮内容中的 A 、B、 C、ABC、AB、BC
- 深拷贝和浅拷贝在内存中如何执行?
- 原生方法实现深拷贝?
总结
面试比较偏基础的,有的在开发过程中很少留意,答的时候结巴了,在学习的过程中,除了要根据官方文档来学习,也要有自己的思考,要发散思维,不能局限在一个知识点上,面试官会追问某个问题;
对前端工程化考的很少,应该是跟简历上的业务有关系;
前端已死的想法不可取,简历少的原因大概有以下几点:
- 业务不匹配
- 业务很简单,看上去没做什么内容
- 技术栈不匹配,**很多公司都是需要Vue技术栈的
- 没有自己的博客、GitHub作品,自身没有亮点
关于全栈
我个人也有向全栈发展,但很多公司貌似要后端到前端的全栈,而不是前端到后端的全栈
后端使用Node、Java需要考虑好,虽然说Node更适合前端,但很多公司后端开发使用的是Java
除非在公司业务上就在做全栈,否则自学的全栈很少有人要
最后
应该专精于某一领域,可视化、音视频等,招聘的时候会有用
如果焦虑35岁退休,那35岁之前如何渡过,应提前规划
多向大佬们学习。
以上仅是我的观点,有疑问,可在评论区留言,听听大家的想法;