小红书前端日常二面:从输入 URL 到渲染、React 与 Vue 差异
- 轮次
- 二面
- 时间
- 2026-10
- 来源
- 牛客网
《面试题目》
- 自我介绍。
- 你做前端做了多久?
- 写代码是古法编程,还是基本都用 AI 编程?
- 如果给前端基础能力打分,满分 100 你打多少?
- 从浏览器地址栏输入 URL 到页面整体渲染,讲一下从前端到后端再到浏览器的完整过程。
- 结合渲染过程,页面渲染性能优化该怎么做?
- React 和 Vue 各有什么特点?
- React 和 Vue 的虚拟 DOM 有什么差异?
- 结合各自的虚拟 DOM 渲染原理,用 React 和 Vue 写业务代码时要注意哪些逻辑规范?
- 前后端交互时,如何确保前端访问的安全性?
- 状态管理主要解决什么问题?
- 大模型为什么能帮你干活?底层原理大概是什么?
- 讲一下你最近实习做的项目:为什么做、遇到什么挑战、怎么解决的?
- 这个项目有多少人参与?
- 反问。
《参考解析》
从 URL 到渲染:DNS 解析 → TCP/TLS 握手 → 发送 HTTP 请求 → 服务端处理并返回 HTML → 浏览器解析 HTML 构建 DOM、解析 CSS 构建 CSSOM → 合成渲染树 → 布局 → 绘制 → 合成;期间遇到 JS 会阻塞解析(除非 async/defer),遇到图片和样式会继续发起请求。
渲染性能优化:减少首屏关键资源、路由与组件懒加载、图片懒加载和合适尺寸、避免强制同步布局(读写分离)、用 transform/opacity 做动画、长列表虚拟化、减少重排重绘,指标看 LCP/INP/CLS。
React 与 Vue 的虚拟 DOM 差异:Vue 的模板在编译期能做静态提升和补丁标记(PatchFlag),更新时只 diff 动态节点;React 靠运行时协调(reconciliation),用 key 做同层比较,配合 Fiber 可中断渲染。Vue 的响应式基于 Proxy 依赖追踪,React 靠显式 setState 触发重渲染。
业务代码规范:React 注意 key 的稳定性、避免在渲染中创建新对象导致子组件重渲染、状态提升与拆分;Vue 注意响应式丢失(解构 props、直接改数组下标)、computed 与 watch 的取舍。
前端安全:XSS(转义、CSP、富文本白名单)、CSRF(SameSite、token)、敏感信息不落前端、接口鉴权与越权校验、依赖供应链安全。
状态管理解决的是「跨组件共享和可预测更新」:把共享状态从组件树里抽出来,集中管理和追踪变更,避免层层透传和状态不一致。
大模型能干活的原理:基于 Transformer 的自回归预测,海量文本训练出语言和知识表示,再通过指令微调对齐人类意图;它能调用工具、按上下文推理,但本质是概率生成,需要外部校验。