- 为什么学习前端
- 网站是用什么服务器搭的?(腾讯云)对云计算有了解吗?(不了解)
- 个人博客所用技术?(react+redux+antd+node+mysql)
- 部署时候用到niginx工具吗(配合面板进行niginx配置)
- 对哪些部分进行了封装?(echarts、编辑新增表单)
- 博客中提到组件通信讲解下(八股)
- 类式组件和函数式组件区别(八股)
- 自定义hook写过吗(没写过,但是知道其作用)
- 建站日志使用的是瀑布流方式展示,如果一下10w条数据,怎么渲染那么多条数据,你怎么处理?(提到了虚拟列表,之前看过)(这个只是用了一个插件实现,没考虑到瀑布流方式,诶,结果面试官就针对这个开始疯狂提问)
- 虚拟列表怎么实现?(不会虚拟列表,就靠感觉答了)怎么判断一些图片应该展示,一些不展示?(通过scrollTop.scrollHeight,clientTop来判断每个DOM是否达到了可视区域 )虚拟列表项实际高度不一样,你会怎么设计?(就说固定大小,超出部分隐藏)如果是图片的展示,固定高度后超出部分隐藏效果是不太好的,那你会怎么做(还是说了可以通过scrollTop.scrollHeight,clientTop直接判断,不用关心每个列表项的高,感觉面试官刚才我的回答没理解,所以又问了这个)
- 怎么实现深拷贝(考虑到了数组和对象,提到了无限递归形式用weakMp,但是面试官让具体将,这里没讲出来,忘了)
- vue和react区别(答的不好)
- 虚拟DOM理解(理解)
- TS泛型概念(八股)TS中的工具函数pack,call,partical使用过吗?(没用过)
- ts定义一个接口,有3个属性,我想只取第一个属性对后面的对象进行约束,怎么做(不会)
- 项目哪里用泛型(泛型用的不多,更多是基本的数据类型约束)
- i18n如果你不用插件,怎么实现?(创建两个json语言包,在组件中引入,创建一个方法实现对用语言包内容属性的切换--感觉答的不太对吧)
- node还用过什么偏后端东西(express框架,读取写入文件,cors中间件,就说了这几个)
- axios请求怎么同时发送3个请求,然后再根据返回每个的结果,统一处理,比如累加,再渲染页面,怎么处理?(说的await,最后接受结果后,在处理)如果每个请求花费1s,你这样操作会花费3秒钟,用户体验不行,你还有什么方式改进吗?(这里不会,后面了解应该用promise.all吧!)
- java中有个sleep()方法,比如停止1s在操作,js中是没有默认方法,你怎么实现(随便说的setTimeout)面试官说这样会丢失上下文,提到promise+seTimeout+async可以做个组合去实现
- 能达到6个月实习吗
面试官总结:项目偏向个人玩使用,所以系统性的工程知识会有欠缺,说这也是自学很多人的痛点,对于实际企业来说,会考虑很多场景和需要,比如建站日志来说需要考虑瀑布流性能以及白屏时间等,这些很多也是需要到企业中才能学习到
个人总结:表现很不好吧,除了八股大部分说出来,一些场景的题或者灵活运行的题,很多都答的不好,这些可能也是平常学习没考虑到的方面,面试官明没有纯考八股,而且结合实际让你去想解决方案
#工作##面经##前端#