当前位置: 首页 > news >正文

腾讯前端面试真题

今天心情起起伏伏(2025.08.08),

  1. 小鹏汽车挂人(上次面试就感觉不招人,完全没面试氛围,但是心了;还是想要过了,毕竟是正式秋招批第一给面的,也想那个offer保底,但是…没了…)
  2. 投了京东秋招,做测试时,Tencent打电话约面(提前批),完全是抱着试试水投的,还给面了,虽然知道很有可能…,但加油,可以的,会有工作的!!!

在这里插入图片描述


以下是对腾讯前端实习面试问题的系统分类和逻辑化回答框架,帮助您在面试中结构化展示技术能力:


一、技术领域分类

面试问题
前端基础
框架原理
网络协议
性能优化
工程化
算法/数据结构

二、核心问题回答框架

1. 前端基础
问题逻辑化回答要点
虚拟DOM vs 真实DOM
1. 性能瓶颈:直接操作DOM触发重排/重绘(昂贵)
2. 解决方案:虚拟DOM作为内存中的轻量对象(计算diff)
3. 批量更新:将多个DOM操作合并为单次patch(例:列表更新)
4. 性能权衡:内存计算时间 < 浏览器渲染时间(适用于中大型应用)

| 事件循环 |

- 宏任务:script整体/setTimeout/setInterval/UI渲染/I/O
- 微任务:Promise.then/MutationObserver/queueMicrotask
- **关键点**:fetch是宏任务(但Promise回调是微任务)
2. React原理
问题结构化回答
Fiber架构
1. 痛点:同步渲染阻塞UI(16ms丢帧)
2. 解决方案:- 链表结构(可中断/恢复)- 时间切片(requestIdleCallback)
3. 优先级:React内部定义(事件>动画>数据加载)

| Hooks优化 |

- 内存优化:useMemo/useCallback避免重复计算
- 逻辑复用:自定义Hook解耦业务逻辑
- 渲染控制:React.memo减少重渲染
3. 网络协议
HTTP
状态码
缓存策略
HTTPS
问题回答要点
HTTPS加密
1. 非对称加密:交换密钥(RSA)
2. 对称加密:传输数据(AES)
3. 证书作用:验证服务端身份(防中间人攻击)

| 缓存策略 |

- 强缓存:Cache-Control/max-age(200 from memory)
- 协商缓存:ETag/Last-Modified(304 Not Modified)
4. 性能优化
场景解决方案
复杂计算阻塞
1. Web Workers:多线程执行(不阻塞UI)
2. 时间切片:将任务拆分为requestIdleCallback区块
3. 算法优化:空间换时间(记忆化)

| 首屏加载慢 |

- 资源分级:关键CSS内联/非核心JS异步
- 预加载:link rel=preload
- CDN加速:静态资源分发
5. **工程化体系
1. 构建工具:Webpack(tree-shaking) vs Vite(ESM)
2. 模块规范:CJS(require) vs ESM(import)
3. TS进阶:- 泛型:类型参数化(`type Response<T> = { data: T }`)- type vs interface:类型扩展能力不同
6. 算法/数据结构
题型解题框架
字符串两数相加
function addStrings(num1, num2) {let i = num1.length-1, j = num2.length-1;let carry = 0, res = [];while(i>=0 || j>=0 || carry) {const sum = (+num1[i--] || 0) + (+num2[j--] || 0) + carry;res.push(sum % 10);carry = Math.floor(sum / 10);}return res.reverse().join('');
}

| 组合总和(回溯) |

function combinationSum(candidates, target) {const res = [];const dfs = (start, path, sum) => {if (sum === target) res.push([...path]);if (sum >= target) return;for (let i = start; i < candidates.length; i++) {path.push(candidates[i]);dfs(i + 1, path, sum + candidates[i]); // 关键:i+1避免复用path.pop();}};dfs(0, [], 0);return res;
}

三、面试表达技巧

  1. STAR法则
    S(情境):在广告落地页优化项目中  
    T(任务):需解决首屏秒开率仅15%的问题  
    A(行动):采用ISR渲染+资源预加载+Lottie替代APNG  
    R(结果):秒开率提升至65%,曝光+10%
    
  2. 原理图解
    虚拟DOM diff过程:
    State变化
    生成新Virtual DOM
    Diff算法比对
    最小化patch
    批量更新真实DOM
  3. 避坑指南
    • React Fiber调度不是直接使用requestIdleCallback,而是模拟其逻辑
    • Array.sort在V8中:小数组用插入排序(稳定),大数组用快排(不稳定)

💡 终极话术
“我的技术知识体系建立在 深度理解原理 + 大型项目验证 基础上:

  • 通过实现简易React(含Fiber调度)理解框架设计
  • 在得物广告系统中验证性能优化方案的有效性
    这种能力可快速迁移到贵司复杂业务场景中。”

http://www.dtcms.com/a/320744.html

相关文章:

  • Kafka生产者事务机制原理
  • Java集合中的链表
  • 解耦主库负载,赋能数据流转:MySQL Binlog Server 核心指南
  • Web 图像捕获革命:ImageCapture API 全面解析与实战指南
  • mt6897 scp a+g sh5201 porting记录
  • 数据结构:哈希表、排序和查找
  • 光子精密3D工业相机的应用与优势解析
  • CS231n2017 Assignment3 PyTorch部分
  • 代理模式在C++中的实现及面向对象设计原则的满足
  • 利用哥斯拉(Godzilla)进行文件上传漏洞渗透实战分析
  • ​「解决方案」Linux 无法在 NTFS 硬盘上创建文件/文件夹的问题
  • C++多态与虚函数的原理解析
  • MySQL的触发器:
  • 虹科技术分享 | LIN总线译码功能与LIN控制交流发电机(二)
  • 灌区信息化智能管理系统解决方案
  • 计算机视觉CS231n学习(5)
  • AI开发平台行业全景分析与战略方向建议
  • C++归并排序
  • 使用 Python GUI 工具创建安全的密码短语
  • tmi8150b在VM=3.3v电压下,如何提高转速,记录
  • 高性能 Vue 应用运行时策略
  • 仓颉编程语言的match表达式
  • 《算法导论》第 12 章 - 二叉搜索树
  • 【量子计算】量子计算驱动AI跃迁:2025年算法革命的曙光
  • conda pip uv与pixi
  • SpringCloud(4)-多机部署,负载均衡-LoadBalance
  • ASP.NET三层架构成绩管理系统源码
  • HBase的异步WAL性能优化:RingBuffer的奥秘
  • 深度虚值期权合约有什么特点?
  • InfoNCE 损失