面试冲刺:高频考点清单
来源:掘金 30 秒考点、牛客大厂真题、腾讯云 27 道 Agent 真题、小林 coding 530+ 题库
标记:🔴 必考 / 🟡 高频 / ⚪ 加分项
一、前端 JavaScript(基础层)
🔴 必考
| # | 题目 | 关键答案 |
|---|
| 1 | Event Loop 执行顺序 | 同步 → 微任务(Promise.then)→ 宏任务(setTimeout)→ 渲染 |
| 2 | 闭包是什么?用途?缺点? | 函数 + 词法环境;私有变量、防抖;内存泄漏 |
| 3 | 原型链终点? | null。Object.prototype.__proto__ === null |
| 4 | Promise.all vs allSettled | all 一挂全挂;allSettled 无论成败都等全部返回 |
| 5 | async/await 本质 | 语法糖,生成器 + Promise 自动执行器 |
| 6 | 0.1 + 0.2 !== 0.3 | IEEE 754 双精度浮点误差,先乘后除 |
| 7 | 深拷贝方案 | structuredClone(obj) 原生,支持循环引用 |
| 8 | setState 同步还是异步 | 合成事件/生命周期中批量更新(表现异步);原生事件/setTimeout 中同步 |
🟡 高频
| # | 题目 | 关键答案 |
|---|
| 9 | ES Module vs CommonJS | ESM 编译时异步值引用支持 Tree Shaking;CJS 运行时同步值拷贝 |
| 10 | Map vs WeakMap | WeakMap 键必须是对象,弱引用不阻止 GC,适合关联元数据 |
| 11 | Proxy vs Object.defineProperty | Proxy 劫持整个对象,能监听新增属性;defineProperty 需要逐个属性劫持 |
| 12 | typeof null | "object"(历史遗留 bug) |
| 13 | == 隐式转换规则 | null == undefined → true;数字与字符串比较先转数字 |
二、React / Vue(框架层)
🔴 必考
| # | 题目 | 关键答案 |
|---|
| 14 | React Fiber 是什么 | 双缓存树(current / workInProgress),可中断恢复的增量渲染 |
| 15 | useEffect vs useLayoutEffect | 前者异步渲染后;后者同步 DOM 变更后绘制前,防闪烁 |
| 16 | React.memo vs useMemo | memo 组件级浅比较;useMemo 值级缓存计算结果 |
| 17 | React Diff 三大策略 | Tree(同层比较)、Component(同类型才 Diff)、Element(key 匹配) |
| 18 | Vue3 响应式原理 | Proxy 劫持整个对象 + Reflect,数组无需重写 7 个方法 |
| 19 | v-if vs v-show | v-if 真移除 DOM;v-show display:none,频繁切换用 v-show |
| 20 | 为什么列表必须加 key | 让 React 精确匹配节点,避免不必要的 DOM 重建 |
🟡 高频
| # | 题目 | 关键答案 |
|---|
| 21 | React18 并发特性 | startTransition 标记非紧急更新;useDeferredValue 延迟渲染 |
| 22 | Composition API 优势 | 逻辑组合优于 mixin,无命名冲突,TypeScript 友好 |
| 23 | React 为什么需要 Fiber 而 Vue 不需要 | Vue 响应式精确知道哪些组件变了;React 需要从根 diff,所以需要可中断 |
| 24 | React 废弃 componentWillMount 的原因 | Fiber 架构下 render 阶段可能执行多次,副作用不安全 |
三、工程化 & 性能(实战层)
🔴 必考
| # | 题目 | 关键答案 |
|---|
| 25 | Vite 为什么快 | 开发期原生 ESM + esbuild 预构建无打包;生产用 Rollup |
| 26 | Webpack 优化三板斧 | 缓存(持久化 cache)、并行(thread-loader/swc)、拆包(SplitChunks + 动态 import) |
| 27 | 首屏性能三大指标 | FP / FCP / LCP < 2.5s 达标 |
| 28 | 防抖 vs 节流 | 防抖停手才执行(搜索框);节流间隔执行(滚动加载) |
🟡 高频
| # | 题目 | 关键答案 |
|---|
| 29 | XSS 防御 | 输入转义、CSP 白名单、React 默认转义 |
| 30 | CSRF 防御 | SameSite Cookie、Token 双重校验、Referer 白名单 |
| 31 | 虚拟列表原理 | 只渲染可视区域的 DOM,滚动时动态替换,用 padding 撑高度 |
四、手写题(必考,现场写)
| # | 题目 | 要点 |
|---|
| 32 | Promise.all | 计数器 + Promise.resolve 包装 |
| 33 | 防抖 debounce | clearTimeout + setTimeout |
| 34 | 深拷贝 | 递归 + 循环引用检测(WeakMap) |
| 35 | instanceof | 沿 proto 链查找 |
| 36 | 发布订阅 EventEmitter | on/off/emit,Map 存储 |
| 37 | 数组扁平化 flat | 递归或 reduce + concat |
| 38 | call/apply/bind | 改变 this 指向,bind 返回新函数 |
五、AI 大模型基础
🔴 必考
| # | 题目 | 关键答案 |
|---|
| 39 | 用户输入到模型输出 token 的完整流程 | Tokenization → Embedding → Transformer(自注意力) → softmax → 逐 token 生成 |
| 40 | Self-Attention 的 Q/K/V | Q=查询,K=键,V=值;softmax(QKᵀ/√dₖ)·V |
| 41 | 多头注意力的作用 | 多组 Q/K/V 并行计算,捕获不同语义关系,拼接后线性变换 |
| 42 | 位置编码为什么需要 | Transformer 没有顺序信息,位置编码注入序列顺序 |
| 43 | LLM 四大天花板 | 只会说不会做、没记忆、知识截止、不会规划 |
🟡 高频
| # | 题目 | 关键答案 |
|---|
| 44 | SFT / RLHF / DPO 区别 | SFT 监督微调;RLHF 人类反馈强化学习;DPO 直接偏好优化(不需要奖励模型) |
| 45 | Token 和 Word 的区别 | 一个汉字 1-3 个 token;token 是模型最小处理单位 |
| 46 | 温度参数 top-p 作用 | 温度越高随机性越强;top-p 核采样控制候选范围 |
六、Agent 架构(重点!大厂必问)
🔴 必考
| # | 题目 | 关键答案 |
|---|
| 47 | Agent = LLM + ? | + 工具 + 记忆 + 规划,在循环中自主完成目标 |
| 48 | ReAct 三步循环 | Thought(思考)→ Action(行动)→ Observation(观察)→ 循环 |
| 49 | 防止 ReAct 死循环 | 最大步数限制(15)、重复动作检测(3 次相同退出)、超时控制 |
| 50 | Function Call 底层流程 | 定义工具 → LLM 输出结构化调用指令 → 代码解析执行 → 结果传回 LLM。LLM 不执行函数 |
| 51 | MCP 解决什么问题 | N×M 爆炸 → N+M;工具集成标准化;动态发现新能力 |
| 52 | MCP 三类资源 | Tools(可执行操作)、Resources(可读数据源)、Prompts(预设模板) |
| 53 | MCP 底层协议 | 本地 stdio,远程 HTTP + SSE,消息格式 JSON-RPC 2.0 |
🟡 高频
| # | 题目 | 关键答案 |
|---|
| 54 | Agent vs Workflow | Workflow 控制权在代码,Agent 控制权在 LLM;混合架构最常见 |
| 55 | Plan-and-Execute | 先规划再执行,Token 消耗约 ReAct 的 20%,但需要重新规划检查点 |
| 56 | Reflection 模式 | 一个生成一个审查,循环迭代直到质量达标 |
| 57 | Multi-Agent 何时引入 | 任务明确需要并行处理或专业分工时;不要过早引入 |
| 58 | A2A 协议 | Agent ↔ Agent 协作;Agent Card 名片 + Task 标准化任务;MCP 解决纵向,A2A 解决横向 |
| 59 | Skills vs Prompt | Skills 按需激活场景触发 + 完整方法论;System Prompt 全局生效通用规范 |
| 60 | Function Call / MCP / Skills 关系 | Skills 决定「怎么想」→ MCP 决定「用什么」→ Function Call 决定「怎么调」 |
七、RAG(必考!)
🔴 必考
| # | 题目 | 关键答案 |
|---|
| 61 | RAG 完整流程 | 文档切片 → Embedding 向量化 → 存向量库 → 问题向量化检索 → Rerank → 拼 prompt 发给模型 |
| 62 | 为什么要切片 | Embedding 有长度限制;检索粒度更精准;避免信息稀释 |
| 63 | 切片重叠区域作用 | 保证上下文连续性,避免边界信息丢失,通常 10-20% |
| 64 | 余弦相似度 vs 欧氏距离 | 余弦关注方向(语义),欧氏关注距离(绝对值);文本场景通常用余弦 |
| 65 | 为什么需要 Rerank | 向量相似度 ≠ 语义相关性;Rerank 用 Cross-Encoder 重新排序 |
| 66 | 混合检索 | 向量检索 + BM25 关键词检索结合,比纯向量更稳 |
| 67 | 如何防止幻觉 | Prompt 边界条件(“仅基于以下内容回答”)、要求引用来源、允许说不知道、降低温度 |
🟡 高频
| # | 题目 | 关键答案 |
|---|
| 68 | Top-K 过大的问题 | 信息过载、上下文浪费、答案漂移;通常 K=5-10,Rerank 后压到 3-5 |
| 69 | 增量索引策略 | 版本控制 + 哈希检查 + 分段更新 + 软删除 |
| 70 | 稠密向量 vs 稀疏向量 | 稠密捕获语义(BERT),稀疏精确匹配(TF-IDF) |
| 71 | 向量数据库选型 | Chroma(本地开发)、Milvus(生产级)、Pinecone(云服务)、Weaviate(混合搜索) |
八、Agent 记忆 & 安全
🟡 高频
| # | 题目 | 关键答案 |
|---|
| 72 | 记忆三层设计 | 工作记忆(当前上下文)、会话记忆(摘要滚动)、长期记忆(向量库/结构化库) |
| 73 | 上下文压缩策略 | 滑动窗口丢弃旧消息、摘要压缩、重要性过滤 |
| 74 | Prompt Injection 防御 | 数据/指令分离、输入过滤、Prompt 模板隔离、上下文标记 |
| 75 | 最小权限 + Human in the Loop | 高风险操作必须人工审批;读任务只给 SELECT 不给 DELETE |
九、项目叙述模板(STAR 法)
🔴 必考
S(情境):项目背景是什么,面临什么问题
T(任务):你的职责是什么,目标是什么
A(行动):你做了什么决策,为什么这么选,具体改了什么
R(结果):量化成果(延迟降低 X%、Token 节省 Y%)
讲项目的正确姿势
- ✅ 讲决策过程:“最开始用单 Agent,发现链路太长出错了不好定位,所以拆成 Planner + Executor”
- ✅ 讲具体改动:“发现召回一多模型就被带偏,补了一层 Rerank,topk 从 10 压到 5”
- ✅ 讲踩坑经验:“某个 Tool 超时很难从中间恢复,所以把任务状态单独存出来”
- ❌ 报菜名:“我们用了 RAG、Tool Calling、MCP”
- ❌ 只讲系统有什么,不讲改了什么
十、推荐复习顺序(一周冲刺)
| 天 | 上午(3h) | 下午(3h) | 晚上(2h) |
|---|
| Day1 | JS 基础 1-8 | 手写题 32-35 | 复习 + 做题验证 |
| Day2 | React/Vue 14-20 | 工程化 & 性能 25-31 | 手写 36-38 |
| Day3 | Transformer 基础 39-42 | LLM 基础 43-46 | AI 笔记整理 |
| Day4 | Agent 架构 47-53 | Agent 进阶 54-60 | 梳理 AI 项目 STAR |
| Day5 | RAG 61-67 | 记忆 & 安全 72-75 | 梳理前端项目 STAR |
| Day6 | 全真模拟:我来当面试官 | 补薄弱点 | 补薄弱点 |
| Day7 | 全真模拟:AI 方向 | 全真模拟:前端方向 | 调整心态 |
参考来源
前端方向
AI Agent 方向