总结高频问题
- URL到页面渲染的过程
- 前端优化:开发中的优化,上线的优化,打包工具的优化
- 前端工程化原理
- 事件循环机制
- 缓存:强制缓存和协商缓存、浏览器缓存和离线缓存
- 重绘和重排
- position的用法
- Vue响应式原理,Vue特性,Vue生命周期
- 项目经历
- 做过有挑战的事
详细面试真题
主包项目经历有DDD、微前端、E2E测试和MCP,所以问的多一点。
点众1面
- 浏览器从输入url到看到页面经历了什么?
- 完整的URL包含哪些部分?
- 对SEO搜索引擎推广有了解吗?
- position有哪些属性?都是用来干什么?
- 粘性布局的定位是根据谁来锚定的?
- 对于定位,absolute fixed 和sticky有遇到什么兼容性问题吗?
- css降级写法,过渡元素的transform在低版本的浏览器是怎么实现的?
- 响应式布局
- 兼容多端实现方案
- header里的meta标签有了解吗?
- defer和async有什么区别?
- defer塞到我的header里阻塞页面渲染吗?
- 说一下js的事件循环
- 宏任务除了定时器还有别的吗?
- 微任务除了promise还有别的吗?
- fetch属于什么任务?
- 对于纯前端来讲,有哪些优化方案?针对于第1个问题有哪些方案?
- 如何做到dns缓存?谁去缓存?
- 解析dns这一步还有什么优化吗?
- vue的computed和watch的区别?
- 对于新的框架你有什么办法去快速学习?
- 对于ts你了解多少?平时工作用吗?
- nodejs有了解过吗?
新东方 1面
- 项目你做了哪些工作?
- DDD在前端如何使用?
- 项目相关
- 手写一个map方法
点众 2面
- 接触过服务端渲染吗?
- 会用sql吗?
- 项目上线流程,分几期
- 有c端项目经验吗
- b端项目和c端项目区别在哪?
- 前端埋点有了解吗?埋点+分析,埋点+监控
轻舟智航 1面
- 项目里担任的主要职责
- 介绍一下http协议
- 为什么要3次握手4次挥手
- http常见状态码
- 有定义自己的http状态码吗?
- http和https的区别
- 浏览器页面渲染流程,url输入到见到页面过程
- 讲一下浏览器的重排和重绘
- 介绍js的深拷贝和浅拷贝
- 使用json.stringfy进行深拷贝会出现什么情况?
- 事件循环的代码输出判断
- 讲一下事件循环
- js为什么要区分宏任务和微任务
- vue3和vue2的区别
- 近期项目中的有挑战的事情
- 做这些东西收获最大的是什么?
- js算法:最长公共子序列
- cookie、sessionStorage、localStorage和indexDB的区别
- token一般存在哪里
马力 2面
- 重构的过程如何保证安全可靠?
- 你做的事对业务上带来什么价值?有性能提升吗?
- 监考系统有了解吗?
- 引入测试工具考虑的成本吗?
- 测试case如何去写?
感易智能 1面
- vite你是如何优化的?怎么做到冷启动加快的?
- 前端代码质量是如何管控的?
- 开发过程中有碰到过困难和难点吗?
- 二方库公共代码的版本如何做到一致?
- 最近有学一些新的技术吗?
- MCP为什么要用stream协议而不是restful?
- 说一下URL输入到网页展示的过程
- 有哪些手段可以控制服务器的缓存
点众 3面
- 你觉得成长最快的地方在哪?
- 前端sdk是怎么实现的?
- 监控系统指标你认为哪些比较重要?
- 做了哪些组件抽象吗?
- 如果让你设计一个to c的活动落地页,你会怎么优化它的性能?
- 追问:如果资源比较大,你怎么优化?
- 追问:如果图片资源不想损失清晰度,怎么优化?
- 追问:有视频的话,怎么加速?
方舟健客 1面
- 几个框架的设计理念你怎么理解?Angular vue和react
- Vue响应式原理和Angular的变更检测的区别?
- 代码review时看重代码哪些方面?
- CICD有了解过吗?
- 容器部署还是虚机部署?
- web项目的性能优化方案你会做哪些?
- 有对应的指标监控吗?
- 平时开发当中的优化有哪些?
新橙科技 1面
- 讲一下MCP,具体怎么配置mcp server
- 让你去实现一个客户端去操作本地的文件系统或者云端,你会怎么去设计?
- 项目复杂的业务逻辑在哪?
- vite如何加快关键页面加载速度?
- 微前端使用的时候有什么坑吗?
- 让你实现一个入参出参都是一个函数,组件向后端请求过的值就不再请求,直接返回缓存,你怎么实现?
- 追问:如果在请求过程中,状态是pending,我再去请求一个,然后等两个都拿到结果一起返回,怎么实现?
- promise的all方法原理
- 如果让你实现一个控制最大并发的请求队列函数,你会怎么实现?
- 封装过vue的自定义指令吗?
- 菜单权限跟按钮级权限你会怎么实现?
- vue开发过程中有遇到涉及原理的场景吗?
- vuex和pinia的差别解释一下
科迈生物 1面
- 解释一下MCP的概念
- 除了MCP,Agent to Agent了解过吗
- 大模型为什么要用sse,不用websocket呢?
- 讲一下项目中有遇到挑战吗?
- 有路由冲突或者状态管理的问题吗?
- 讲一下fetch-event-source
- 微前端一些三方库有哪些优点呢?
- Vue的生命周期勾子讲一下
- vue项目中如何做性能优化
- vif和vshow的区别
- 项目中用到cdn加速吗
- 有没有成功解决过复杂的表单和性能表格的渲染吗?
- nginx和docker有了解过吗
- 未来3到5年规划
用友 1面
- 算法:数组转树
- 工作中前后开发调试的情况多吗?
- 用chrome浏览器吗?一般关注哪些面板?
- 开发调试的时候用到过条件断点吗?
- 项目中遇到过大的困难吗?
- 微前端的样式隔离和其他隔离怎么实现你知道吗
- qiankun和wujie技术上的差异有了解过吗
- 工作中最有成就感的事是什么?
- 平时工作写代码时间占比多少
- 有输出文档吗
完美世界 1面
- 挑一个印象比较深刻或者有成就感的项目,说一下技术方案解决了什么问题
- 说一下微前端的理解,说一下优点和缺点
- 无论什么业务类型,微前端这种技术架构有什么问题
- 如何避免主子应用单独运行可以,合并一起有问题
- 聊一聊编程规范
- 如何保证规范能够实际落地
- docker命令还记得吗
- CI/CD怎么配置
- devops流水线有几个流程
- 写过单元测试吗
- 代码覆盖率多少
- 这个覆盖率不会出问题吗
- 写单元测试有遇到什么问题吗
- 对AI写的单元测试发现什么问题吗
- 有对数据库的操作和文件的操作吗
- 单元测试会覆盖这些接口吗
- 看机会的原因
- 强缓存和协商缓存有什么区别
- 什么时候用强缓存什么时候用协商缓存
- 有做过对缓存的测试吗
- 离线缓存有了解过吗
- 本地存储有什么区别,sessionStorage和localStorage
- 有做过session和local的测试吗
- 了解过webworker吗?做过demo验证它的可行性吗?
- 最近有了解什么新技术吗?
信也科技 1面
- 项目是什么?解决了哪些问题?
- 什么是圈复杂度?怎么降低圈复杂度?
- 讲一下什么领域驱动设计?低代码整体设计
- 低代码平台如何去产生代码?如何去跟后端对接?
- 大模型的知识库是怎么搭建的?
- 什么是sse?和websocket有什么区别?
- 说几个vue的特性,用起来比较舒服有效率
- vite为什么比webpack快
美图 1面
- 讲一下项目
- 了解过mxgraph底层基于什么来实现的吗
- 有基于canvas做过什么图形渲染吗
- 比如我有一个canvas画布,比如500
*
500,在上面绘制一些图形,它的width和height,以及css的width和height设置成500,怎么保证它的清晰度并且能保证性能最大化 - 讲一下你理解微前端
- 现在常见的微前端框架是如何实现js和css的隔离
- sse和websocket有什么区别
- vue3的响应式原理
- 追问:bucket收集的依赖是指的什么
- 追问:bucket是什么呢
- 追问:基于一个数据收集的依赖,这个数据和依赖怎么做关联呢
- 什么是vnode
- 追问:vnode还解决了什么问题
- diff算法的过程,diff什么东西
- url到页面渲染的过程
- 讲一下event loop
- 追问:页面渲染会在中间哪个流程执行
- 微任务宏任务有哪些
- requestAnimationFrame是做什么的
- requestAnimationFrame和事件循环的关系是怎么样的
- 算法:生成正确的括号
字节 1面
- 在微前端架构的技术选型上需要关注哪些点?
- 什么业务适合用微前端?
- 为什么要单独部署?有什么好处?
- 使用微前端主要使用哪些能力?
- 微前端怎么能够做到子应用独立同时还能复用主应用的一些能力
- 微前端样式上隔离有哪些办法?
- 主子应用的基础库怎么复用?
- 讲一下node的egg框架,相比其他框架有什么好处
- egg部署,master-slave架构了解过吗
- 关于node还有其他深入的研究没
- 讲讲mcp的概念
- mcp跟function call有什么关系
- 大模型是怎么知道需要调用mcp工具的呢
- vite的实现原理了解吗?跟webpack有啥区别
- 打包工具是怎么选型的?为什么用vite
- Angular和react在使用上有啥区别
- 一个页面如果要接入E2E要做哪些事情
- e2e的case需要页面配合吗?需要添加一些东西吗
- 研究过AI E2E 吗
- 说一些常见的前端安全漏洞
- Angular中的装饰器怎么翻译成js的,也就是如何转成低版本的js
- 代码题:用熟悉的框架实现一个模态弹窗
阿里优酷 1面
- 简单介绍一下项目
- 项目追问,最终产出是什么
- 介绍另外一个项目
- 讲一下成就感和有挑战的一些事
- 有做过关于工作流的东西吗
- == 和 === 有什么区别
- 两个对象 == 和 === 是什么
- 我想比较两个对象的key和value是否完全一致如何实现
- 这个对象循环引用遍历会有什么问题吗
- 怎么解决这个问题
- 平时会用到数组的方法吗
- 数组去重有哪些方法?
- vue用的多还是react用的多
- 讲一下虚拟dom
- vdom还有什么其他的优势吗
- vue2的option api的data为什么是一个函数而不是一个对象
- 讲一下防抖和节流
- 讲一下浏览器渲染的过程
- 为什么遇到js之后会停止渲染
- 讲一下重绘和重排
- 怎么减少重绘和重排