pdd一面: 1.项目相关,遇到的难点 2.浏览器的渲染原理和过程 3.重排和重绘的概念,分别在什么时候触发 4.为什么transform不会导致重排 5.强制重排和强制重绘的概念 6.事件循环和raf,raf在浏览器渲染的哪个阶段 7.http协议,http2的特点,多路复用的作用 8.听说过雪碧图吗?为什么不用了?如果带宽无限,可以有无限个TCP连接,多路复用还有必要吗? 9.Vue和React的区别?为什么Vue中没有类似于useMemo之类的缓存相关的钩子 10.对于一个搜索框的联想来说,除了防抖的操作,React官方提供了什么钩子? 11.读代码:setState的更新,React的事件委托机制 12.手撕:单括号匹配(O(1)空间复杂度),多括号匹配,多括号匹配并返回最近一个不匹配的index
pdd二面: 1.了解哪些前端新特性 2.React Router的原理?两种路由模式 3.手撕:实现一个倒计时的React组件;实现一个支持串行请求的方法;实现一个文件上传 4.项目相关
主要时间在写代码,其实手撕都没咋写出来,文件上传直接没写,串行也没太懂意思,本来以为挂了,但是也约三面了
另一个手撕
代码实现检查页面可见性的 功能,最长等待时间3秒。3 秒内若离开页面认为成功, 否则认为失败; 要求: 1、封装成promise 2、使用到的浏览器API需要 考虑兼容性,