国内小厂前端实习面试总结与技术准备指南
系统总结国内小厂前端实习面试的技术考点、投递数据分析、以及完整的技术准备清单
views
| comments
背景#
作为一名墨尔本大学大二在读学生,我在 2025 年底针对 11月-3月 假期寻找上海地区的前端实习机会(React 技术栈)。经过约一周的密集面试,最终收获约 10 offer。经过一周左右的密集面试,最终拿到约 10 个 offer。本文结合我的亲身经历,总结了国内小厂前端实习面试的主要技术考点与准备方法,并分享一些在高频面试阶段保持状态与提升表现的实用心得。
投递数据分析#
基础数据#
- 沟通职位数: 210(包含主动投递和 HR 联系, 仅主要投递的一周)
- 简历交换数: 51
- 面试转化率: 约15%
- Offer 数: 10~
- 主要渠道: BOSS直聘
数据洞察#
从转化率来看,小厂前端实习的简历筛选相对宽松,约 1/6 的沟通能进入技术面试环节, 最终的offer率达到了70%,说明只要面试表现优秀很大概率能获得offer。
面试技术考点分析#
基于我参与的所有技术面试(小厂多为一面,少量二面/Leader 面),可以确定小厂更关注基础与框架实际使用。下面仅保留“会被问到什么”的关键点,具体“如何准备”放在后文,避免重复。
React(高频)#
- Hooks:常见 Hooks 及场景,
useEffect依赖与闭包/渲染陷阱 - 组件通信与状态:父子(props)、跨层(Context)、全局(轻量状态库,如 Zustand/Redux 基础)
- 性能优化:重新渲染控制、
memo/useMemo/useCallback、虚拟列表示意 - 新特性:React 18/19 对并发、表单、服务端能力的影响
JavaScript(高频)#
- ES6+:解构/扩展、模块化、箭头函数与普通函数的区别(
this、arguments、不可作为构造函数)、varvslet/const(作用域、变量提升、暂时性死区) - 异步:Promise 链、
async/await、错误边界与统一处理 - 手写题:防抖/节流、数组去重、(思路级)深拷贝
TypeScript(中频)#
- 常见类型、
interfacevstype、基础泛型、常用工具类型
构建与框架(中频)#
- Next.js:为何选择、SSR/SSG 场景与 SEO 差异
- 构建工具:Vite vs Webpack 的工作方式与性能差异
CSS 布局(高频)#
- 响应式布局类型:
- 媒体查询(Media Queries):断点驱动;优点是控制精细,缺点是断点维护成本;适用于多设备断点明确的 B2C 页面
- 流式布局(Fluid/百分比 + max/min):随容器自然收缩;优点是实现简单,缺点是元素在极端宽度下可能失衡;适用于信息型内容页
- 弹性布局(Flex):主轴/交叉轴分配;优点是一维布局强,缺点是二维排布受限;适用于组件级与线性排列
- 网格布局(CSS Grid):二维网格;优点是布局表达力强,缺点是学习曲线较高;适用于复杂面板/看板
- 现代响应(Clamp/Container Query):按容器/字体尺寸自适应;优点是更贴近组件化,缺点是兼容性需确认;适用于设计系统与组件库
- 结合策略:Mobile-first、内容驱动断点
- 经典三栏(圣杯/双飞翼)原理与差异、Flex/Grid 实现取舍
网络与浏览器(低频)#
- HTTP 状态码与重定向机制
- 跨域(CORS/代理)与 DevTools Network 定位思路
Git(低频)#
- 分支策略、
git rebase、git fetch
其他(特定岗位)#
- 部署:常见前端部署流程与基本排错
- AI/LLM(专项):RAG、长上下文质量保证、API 返回结构
- 表单:向表单库注入/回填数据的方式
技术准备重点#
基于上面的“会被问到什么”,这里给出“如何高效准备”的动作清单,尽量避免重复描述:
核心技术栈(80% 精力)#
- React 生态:
- 过一遍常用 Hooks 并用小 demo 实操;掌握
useEffect依赖与陷阱 - 熟悉 props/Context 与一种轻量状态库(建议 Zustand)
- 做一次性能专项:定位重复渲染,使用
memo/useMemo/useCallback,实现一个简版虚拟列表
- 过一遍常用 Hooks 并用小 demo 实操;掌握
- CSS 布局:Flex 与媒体查询做一次响应式页面
- JavaScript 基础:
- 巩固 ES6+(模块化、解构/扩展、
this行为) - 异步三件套:Promise 链、
async/await、错误处理模式 - 手写三题:防抖、节流、数组去重(可选:深拷贝思路)
- 巩固 ES6+(模块化、解构/扩展、
辅助知识(20% 精力)#
- TypeScript:基础类型、
interfacevstype、一个泛型示例、常用工具类型 - 计算机网络(抓基础即可):
- TCP/IP 四层模型;输入 URL 到页面的过程
- 常见状态码;TCP 三次握手/四次挥手;TCP vs UDP;跨域(CORS/代理)
- 推荐:小林 coding - 图解网络 ↗(图解多,便于理解与记忆)
- 构建工具/Git:理解 Vite vs Webpack 的差异;日常分支管理与
rebase基本操作
简历准备建议#
工具选择#
推荐使用 Reactive Resume ↗:
- 开源免费,支持数据导出
- 模板专业,排版清晰
- 支持 Markdown 和自定义样式
内容原则#
技能部分
- 按熟练度分级(熟练、掌握、了解)
- 只写用过的技术,不写只看过文档的
- 突出与岗位匹配的技能
项目部分
- 2–3 个代表性项目即可,突出你熟悉的技术栈(React / Next.js / TypeScript 等)。
- 描述方式建议采用简明结构:
- 项目简介:一句话说明功能与定位(如「一个支持 AI 模拟面试的语音交互平台」)。
- 技术亮点:聚焦你亲手完成的功能或解决的问题(如“实现登录注册逻辑与数据库对接”、“封装通用表单组件”)。
- 学习收获:可以写成「掌握了 SSR 渲染流程」「理解了 Zustand 状态管理原理」等。
- 真实 > 华丽:不用刻意量化性能指标,重点放在你掌握了哪些关键技术、解决了哪些问题。
- 能上线尽量上线:即使是部署到 Vercel / Netlify,也能展示完整度和动手能力。
- 技术栈一致性:项目里写到的框架、库要与简历技能部分对应,保持前后统一
重要原则
简历上的每一项技术和项目细节,都必须能够深入解释。面试官会基于简历提问,写了不熟悉的内容很容易暴露。
面试策略#
技术面试#
- 基础优先: 小厂面试重基础轻项目,扎实的 JavaScript 和 React 基础比复杂项目更重要
- 结构化表达: 回答问题时先给结论,再展开细节
- 诚实应对: 不会的问题可以说”这个我了解不深,但我的理解是…”,好过胡乱回答
- 把握反问:不要浪费任何一次反问环节,可以提问实习具体内容,组内人员产品等,或者询问面试中需要改进的地方
沟通技巧#
- 在 BOSS 直聘保持活跃,及时回复消息
- 主动投递时简单介绍自己的匹配度
- 面试后发送感谢信,表达兴趣
复盘与练习#
- 多面不怯场:尽量在短时间内密集安排面试,快速进入状态
- 录音复盘(仅自用):回放问题与回答,标记“答得好/一般/待改进”,针对性补齐
- 清单化改进:把高频题与易错点整理为小卡片,间隔重复练习
- 项目尽量上线:把线上地址放在简历和个人主页,HR 与面试官会实际访问,显著加分
总结#
国内小厂前端实习的技术门槛相对明确:扎实的 JavaScript 基础 + React 熟练使用 + 合理的简历包装。相比大厂,小厂更注重”能否快速上手干活”,而不是算法和系统设计能力。
从投入产出比来看,建议将 80% 的时间用于准备 React 和 JavaScript 基础八股文,20% 的时间用于简历优化和项目准备。
希望这篇总结对正在找实习的同学有所帮助。
参考资源: