前言
大家好,我是木斯佳。
相信很多人都感受到了,在AI浪潮的席卷之下,前端领域的门槛在变高,纯粹的"增删改查"岗位正在肉眼可见地减少。曾经热闹非凡的面经分享,如今也沉寂了许多。但我们都知道,市场的潮水退去,留下的才是真正在踏实准备、努力沉淀的人。学习的需求,从未消失,只是变得更加务实和深入。
这个专栏的初衷很简单:拒绝过时的、流水线式的PDF引流贴,专注于收集和整理当下最新、最真实的前端面试资料。我会在每一份面经和八股文的基础上,尝试从面试官的角度去拆解问题背后的逻辑,而不仅仅是提供一份静态的背诵答案。无论你是校招还是社招,目标是中大厂还是新兴团队,只要是真实发生、有价值的面试经历,我都会在这个专栏里为你沉淀下来。专栏快速地址

温馨提示:市面上的面经鱼龙混杂,甄别真伪、把握时效,是我们对抗内卷最有效的武器。
面经原文内容
📍面试公司:腾讯
🕐面试时间:近期
💻面试岗位:前端实习一面
📝面试体验:面试官专业有条理,在介绍项目中插问八股,无手撕
❓面试问题:
- 介绍一下你对 HTTP 这个协议的一些理解
- HTTP2 的多路复用解决了并行发送的问题,但是在一条链路中并行发送 123 这些数据,它怎么知道哪些数据是属于第一个请求?哪些属于第二个请求?接收端它怎么知道当前收到这个数据包,它是属于一还是属于 2 还是属于3?
- 有没有更深入一点的理解HTTP2 头部压缩是做什么?
- HTTP 的缓存机制
- 项目实际项目之中是怎么去配置和怎么利用协商缓存和强缓存机制?实际项目中应该怎么去考量这个时间和过期机制?
- 加载相关的优化业界是有哪些常见的优化方案?
- CDN详细说一下
- 懒加载是怎么达到优化效果?以及它的核心理念是怎么样的?
- 无限滚动那种场景除了你刚刚说的这个懒加载,这种长列表还有没有其他一些优化点呢?
- 上面已经滚动到可视区以外的内容进行一个处理,具体是做了什么?(回收DOM)
- 介绍一个你觉得最能体现你技术能力的一个功能或项目
- 长列表的图片的延迟加载。用户他可能很快的往下滑,比如说他当前是属于第一屏。他下面的第二、第三屏,你们是先用占位的空间占着那个图片的位置。用户他可能一滑的话立马划过了,一下子到了第五、第六屏。那么第二、第三屏这些被他快速划过了,你们还会继续去加载渲染图片吗?(回答防抖优化)
- 平时在开发项目和学习的过程中,你是有用 AI 吗?
- 开发项目的流程之中有没有使用 AI 去帮你开发项目?会用哪些 AI 的工具呢?
- IDE 相关的有没有用?比如说 cursor 啊?平时 cursor 开发具体是怎么去用吗?比如说让它去给你开发项目的时候。
- 用这种 cursor agent AI 给你开发这个过程之中,你觉得会有哪些坑?
- 有没有了解过业界在编程使用 AI 的一些最佳实践或工作流?或者一些相关的配套的 skill MCP 还有实践经验来帮你更好的开发呢。
- 除了开发之外,在哪些编程的节点或流程上,你觉得可以用 AI 继续进行一些辅助或者是提效的呢。
- 在实际使用中或者你什么经验去怎么去review,或者是测试 AI 的产出,避免幻觉呢?
- 有没有了解过多 agent 甚至是 team 模式?你觉得怎么利用多 agent 甚至是 agent 质检的这种模式在接入我们的开发流程之中呢?你觉得比较理想的,又能提高效率,又能提高 agent 的自身的代码质量的一个流程是怎么样?
- 你平时是怎么去关注现在迭代很快的 AI 知识,或者是一些理论或一些实践
- 有了解最近 Git上在编程方面有哪些比较火的一些项目吗?
- 有没有自己搭一些openclaw?
作者:een_1
来源:牛客网
💡 木木有话说(刷前先看)
原文比较长,是汇总的,我们拆成上下篇发出来,整体面经质量比较高,建议参考。
📝 腾讯前端实习一面·深度解析
🎯 面试整体画像
| 维度 | 特征 |
|---|---|
| 面试风格 | 网络深挖型 + 性能实战型 + AI工程化型 |
| 难度评级 | ⭐⭐⭐⭐(四星,HTTP2帧格式、多Agent协作较深) |
| 考察重心 | HTTP协议底層、缓存策略、性能优化、AI辅助开发全流程 |
| 特殊之处 | 问题从"是什么"追问到"具体怎么实现",再追问到"如何保证AI输出质量" |
🔍 逐题深度解析
二、HTTP2 多路复用如何区分不同请求的数据
回答思路 :HTTP2在帧(Frame) 层面通过流ID(Stream ID) 区分不同请求。
核心机制:
- 每个请求对应一个流(Stream),分配唯一流ID
- 每个流的数据分成多个帧(Frame)(HEADERS帧、DATA帧等)
- 同一流的所有帧携带相同流ID,接收端根据流ID重组数据
text
请求1(stream 1): HEADERS帧(stream=1) → DATA帧(stream=1) → DATA帧(stream=1)
请求2(stream 3): HEADERS帧(stream=3) → DATA帧(stream=3)
请求3(stream 5): HEADERS帧(stream=5) → DATA帧(stream=5)
发送顺序可能交错:1-H → 3-H → 1-D → 5-H → 1-D → 3-D → 5-D
接收端根据stream=1、3、5重组数据
优点:单连接并发,消除队头阻塞(应用层)。
三、HTTP2 头部压缩是做什么
回答思路 :HTTP2使用HPACK算法压缩头部,减少冗余。
工作原理:
- 维护静态表 (常见头部,如
:method: GET) - 维护动态表(本次连接中出现过的头部)
- 传输时,未出现过的头部用霍夫曼编码压缩
- 接收端根据表和编码还原头部
压缩效果:请求头部从几百字节压缩到几十字节。
五、实际项目中怎么配置和考量缓存过期机制
回答思路:从资源类型和更新频率两个维度决策。
| 资源类型 | 缓存策略 | 示例 |
|---|---|---|
| 入口HTML | no-cache 或短max-age |
每次协商缓存 |
| JS/CSS(带hash) | 强缓存,1年 | Cache-Control: max-age=31536000, immutable |
| 图片/字体 | 强缓存,1年 | max-age=31536000 |
| API数据 | no-cache 或按业务 |
敏感数据不缓存 |
考量因素:
- 资源更新频率:带hash的静态资源可长期缓存
- 用户实时性要求:HTML必须实时校验
- 服务端负载:平衡用户体验和服务器压力
六~七:加载优化与CDN
常见优化方案:
- 资源压缩:Gzip/Brotli
- 图片优化:WebP、懒加载、响应式
- 代码分割:路由懒加载
- 预加载 :
<link rel="preload"> - CDN加速:边缘节点就近访问
CDN作用:
- 加速静态资源访问
- 减轻源服务器压力
- 提供DDoS防护
八~十:懒加载与长列表优化
懒加载核心理念:可视区内加载,可视区外延迟加载。
长列表优化:
- 懒加载图片内容
- 虚拟滚动:只渲染可视区域DOM
- DOM回收:移出可视区的DOM节点从树中移除,复用或销毁
- 分页加载:滚动触底加载更多
被划过的图片处理:用户快速滚动到底部,中间图片不加载(防抖或懒加载库的阈值设置)。可设置"仅加载可视区及前后N屏"。
十六、Cursor Agent AI 开发的坑
常见坑点:
- 幻觉代码:生成不存在的API或过时语法
- 上下文丢失:修改A处导致B处逻辑被破坏
- 过度抽象:AI喜欢创建很多小文件,增加复杂度
- 安全风险:AI可能引入有漏洞的依赖或硬编码密钥
- 代码风格不一致:不同时间生成的代码风格迥异
规避方法:
- 建立
.cursorrules或AGENTS.md约束AI - 每次生成后人工review
- 将敏感信息排除在上下文外
- 使用单元测试验证AI产出
十七~二十:AI最佳实践、Skill、MCP、多Agent
Skill:预定义能力单元,封装Prompt+工具(如"代码审查Skill")。
MCP:模型上下文协议,标准化Agent与工具/数据源的交互。
多Agent模式:
- 质检Agent:审阅代码Agent的输出,发现bug
- 协作模式:架构Agent设计 → 编码Agent实现 → 测试Agent验证
理想开发流程:
- 架构Agent生成技术方案
- 编码Agent按方案生成代码
- 质检Agent扫描代码(安全、风格、潜在bug)
- 测试Agent生成单元测试
- 人类review关键决策和最终产物
二十二~二十三:Git热门项目与openclaw
近期热门AI项目:
- OpenHands(原OpenDevin):AI软件工程师
- GPT Engineer:自然语言生成完整项目
- Continue:IDE开源AI助手
- LangChain/LangGraph:Agent编排框架
openclaw :可能指OpenCLAW或特定Agent框架,体现对AI Agents生态的关注。
📚 知识点速查表
| 知识点 | 核心要点 |
|---|---|
| HTTP2多路复用 | 流ID区分请求,帧交错传输,接收端重组 |
| HPACK头部压缩 | 静态表+动态表+霍夫曼编码 |
| 缓存策略 | 带hash强缓存,HTML协商缓存 |
| CDN | 边缘节点、就近访问、减轻源站 |
| 懒加载 | 可视区加载,IntersectionObserver |
| DOM回收 | 移出可视区节点销毁/复用,降低内存 |
| Cursor坑 | 幻觉、上下文丢失、安全风险 |
| Skill/MCP | 预定义能力单元、工具协议 |
| 多Agent | 质检Agent、协作开发、代码审查 |
📌 最后一句:
腾讯这场一面,是一场"技术深度+工程化思维"的全面考察。从HTTP2帧格式、HPACK压缩原理,到CDN、懒加载、DOM回收,再到Cursor的坑、MCP/Skill、多Agent协作,面试官既考底层基础,又追问AI工程化落地。能从容应对这套题,说明你不仅懂网络协议、性能优化,更懂得如何让AI成为高效且安全的开发伙伴。在当前AI驱动的开发趋势下,这正是最稀缺的复合能力。