Skip to content

一面 1小时4分钟 1.自我介绍 2. 原型链和类介绍与区别 3. 箭头函数 4. tS、装饰器介绍 5. 手写深拷贝,增加循环引用、depth和特殊类型处理 6. weakmap、map、obj 介绍与区别 7. vue源码中使用weakmap 和 set 的场景介绍,依赖收集结构变更理由,怎么清除的依赖。 8. compostion 和 options api 介绍与区别 9. 浏览器缓存,部署时文件具体的缓存类型 10. https、rsa 和aes 加密介绍,前端加密和 https加密区别,前端加密具体实现思路与场景 11. 介绍项目某个模块的整体思路与实现 12. 手写并发调度控制器

二面 1小时18分钟

  1. 自我介绍
  2. flex介绍
  3. BFC介绍,盒子宽高相等纯css实现(要求宽度是包含块的百分比) 4.dns介绍,查询流程,根服务器等细节
  4. udp和tcp介绍与区别,列举三个以上tcp可靠机制并介绍
  5. 事件循环
  6. promise输出判断
  7. curry/反curry介绍,手写通用curry化工厂函数,增加占位符实现
  8. 岛屿面积最大问题(leetcode原题) 1 后问

三面 59分钟

  1. 自我介绍
  2. 前沿前端技术栈了解情况

vite流程: Entry → Rollup bundling → Transform → Optimize → Output 3. 第一段实习工作介绍,问了其中有个地方为什么采用轮询而不是websocket,影响大吗 4. 前端安全(xSS,csrf) 5. vue源码编译流程,简单介绍 vue3 parse 后的 ast 树;编译优化介绍,靶向diff 如何处理 dom结构变化的情况 6. webpack 与 vite 介绍与区别,挑一个讲下他的流水线 7. 性能优化结合项目介绍,lighthouse fcp 的计算方式是什么 8. 手写属性访问函数(访问对象可能含有嵌套数组和对象)

大概是这样:get(obj, 'a[0].b.c[2].d') 实现这样一个函数,输入是一个对象(里面可能有嵌套数组和对象)和一个路径参数(字符串),然后要根据字符串取值返回对应的属性

  1. 反问
本站访客数 人次 本站总访问量