前端监控浏览器关键指标怎么计算(performence Api例如performanceObserver啥的,可以看看MDN用法或者掘金的文章)
你的项目对Vue深度定制化怎么做的(vue的use功能,做成了Vue的插件)
监控系统的错误信息你怎么收集的(js错误拦截window.onerror时间在里面写逻辑,网络请求错误重写xhr的send方法,白屏通过document.elementsFromPoint,组件渲染时间用的Vue2的混入计算生命周期的间隔...)
怎么上报的信息(直接发给后端处理)
报错如果被try catch我还想上报怎么办(没答出来,后面请教其他人可以写一个babel的插件识别ast然后上报)
如果上报信息的时候用户把页面关了怎么办(在上报之前保存一份信息,下次用户访问重发)
如果用户的页面很多条报错请求太多怎么优化(答得开http2,自己写个控制请求并发数量的队列,不是面试官想要的)答案:本地存下来,后面一起发只需要一个请求
怎么发npm包(package.json写作者,github仓库,关键词...等信息,npm login后npm publish)
怎么打包不同的产物如cjs和ejs(rollup打包可以指定)
vue源码reactive,ref,watch,computed原理
vue3runtime的大概逻辑
vue3的patch函数大概做了什么
vue3的diff算法,为什么用双端对比,为什么用最长递增子序列,了解过最长递增子序列吗(leetcode300题可以看看,vue里面的最长递增子序列更难点,加了回溯的逻辑)
vue3的模板编译大概做了什么
render函数大概做了什么
vue编译层面优化(动态节点和静态节点)
http缓存你了解多少(强缓存和协商缓存)
有没有自己用过service worker(没有)
你觉得service worker可以用在哪里(vite的首屏很慢,可以试试,但是代码实时性有问题)
协商缓存(看文章)
强缓存(看文章)
了解过数据摘要算法吗(看文章)
有用过SSR的框架吗(用过next.js)
SSR的原理是什么(后端直出页面然后客户端hydrate注水)
vue项目怎么做缓存优化(答错方向了)答案:对html文件做协商缓存,其他优化如CDN,service worker,压缩.....
有对前端其他编译的工具做了解吗(babel,webpack)
说一下babel转换代码的原理吗,实现过吗(parse->transform->generate,没实现过)
反问:
技术栈,大概做什么(技术栈主要Vue3,后面可能往react发展,大数据管理系统,后面想做前端监控,强度较高)
第二天约二面...
二叉树的层序遍历(leetcode原题)
代码输出题(eventLoop)
react跟vue有什么区别(react灵活使用jsx写法,虽然Vue也有jsx写法,但不是主流,而且模板写法编译有优化,react是对比差异来更新的,而且父组件更新,子组件默认也会更新,所以react更新手段一个方法就是浅比较,判断父组件更新的时候,子组件是否要更新,从而跳过子组件更新,vue是以组件为颗粒度的,可以精准的找到需要更新的地方,组件拆分细一点,就可以达到一定优化效果,vue的响应式自动追踪依赖,react要自己声明依赖,vue是双端diff算法,react内部可以看成实现了一个迷你的操作系统,有任务调度和时间分片的概念)
react的diff算法(找文章看)
旧版的react有什么不好(递归更新子组件,更新开始后不可打断,同步更新)
react的fiber架构解决了什么问题(react16开始加了调度器,使整个更新过程可随时暂停恢复,整个更新过程由 current 与 workInProgress 两株树双缓冲完成)
react组件渲染的优化用什么api(React.memo,pureComponent)
next.js的使用有遇到什么问题吗(开发体验不是很好,但是生产环境确实快)
ssr主要解决了什么问题(首屏加载,seo优化)
孤岛架构是什么,可以描述一下吗(astro,qwik等框架...,可以看掘金的文章)
为什么首屏的加载会慢,除了ssr还有什么解决方案(CDN,图片压缩,代码压缩....)
你的监控系统项目跟市面上的监控系统有什么区别(Vue定制化)
tcp为什么挥手要四次,握手三次(服务端还没发完东西)
挥手可以由谁发起(客户端和服务端都可以)
tcp的有哪些重要的机制(重传机制,拥塞控制机制,流量控制机制,可靠传输机制)
tcp跟udp有什么区别(看看文章)
怎么接触到的前端
想往哪个方向发展
大概准备实习多久
过一个小时hr面...
学校课程情况
项目过程你在团队担任什么角色
可以实习多久.....
#前端##前端实习#