腾讯(前端岗)暑期实习一二三面面经

腾讯(前端岗)暑期实习一二三面面经
最新回答
墨语三千

2023-04-25 02:04:54

腾讯前端岗暑期实习一面、二面、三面面经总结如下

一面(40分钟)
  • 考察重点:基础技术知识,涵盖HTML、CSS、JavaScript、前端框架及性能优化。
  • 具体问题

    CSS相关

    position属性比较(如relative、absolute、fixed的区别)。

    浮动清除方法(如clear属性、overflow: hidden、伪元素清除法)。

    CSS3新特性(如Flexbox、Grid布局、动画@keyframes、媒体查询等)。

    JavaScript相关

    数据类型判断方法(typeof、instanceof、Object.prototype.toString.call())。

    数组常用方法(如map、filter、reduce、forEach)。

    数组去重实现(如Set、filter索引判断、双重循环)。

    闭包的作用(如封装变量、延长变量生命周期、模块化开发)。

    addEventListener参数(事件类型、回调函数、是否捕获阶段触发)。

    事件代理在捕获阶段的实际应用(利用事件冒泡机制,通过父元素统一处理子元素事件)。

    去除字符串首尾空格(如trim()方法或正则表达式)。

    存储与安全

    cookie、sessionStorage、localStorage的区别(存储大小、生命周期、作用域、是否随请求发送)。

    cookie与session的区别(存储位置、安全性、生命周期)。

    常见安全问题(如XSS攻击、CSRF攻击的防御措施)。

    网络与框架

    AJAX返回的状态(如readyState、status码)。

    HTTP状态码(如200成功、404未找到、500服务器错误)。

    React生命周期(如componentDidMount、shouldComponentUpdate)。

    Redux的作用(状态管理、单向数据流)及常用方法(如dispatch、subscribe)。

    组件何时使用state(需要动态更新的数据)。

    AngularJS与React的区别(如双向绑定 vs 单向数据流、模板语法差异)。

    Ant Design的优缺点(优点:组件丰富、设计规范;缺点:样式定制复杂、体积较大)。

    性能优化

    通用优化策略(如代码压缩、懒加载、缓存利用)。

二面(45分钟)
  • 考察重点:项目经验、前端知识深度、团队协作与工程化能力。
  • 具体问题

    学习与职业规划

    前端学习经历(如学习路径、技术栈积累)。

    选择前端的原因(如兴趣、技术特点、职业方向)。

    前端知识

    移动应用与Web应用的关系(如跨平台开发、性能差异、用户体验)。

    HTTP常用请求头(如Content-Type、Authorization、Cache-Control)。

    强缓存与协商缓存(通过Expires/Cache-Control和Last-Modified/ETag实现)。

    前端测试方法(如单元测试、E2E测试、测试框架Jest/Mocha)。

    项目管理与协作

    作为项目负责人协调多人协作的策略(如任务分配、代码审查、沟通机制)。

    接口文档制定(需明确参数、返回值、错误码,平衡详细度与可维护性)。

    需求不明确时接口文档的详细程度(需与团队沟通,确保关键字段覆盖)。

    项目细节

    介绍一个做过的项目(技术栈、架构设计、核心功能)。

    项目中遇到的难题及解决方案(如Webpack配置优化、打包体积优化)。

    受控组件与非受控组件的区别(受控组件状态由React管理,非受控组件由DOM管理)。

三面(40分钟)
  • 考察重点:技术深度、计算机基础、问题解决能力。
  • 具体问题

    前端框架与工具

    React的核心概念(如组件化、Virtual DOM、单向数据流)。

    Virtual DOM的作用(通过差异对比减少DOM操作,提升性能)。

    React与Angular的区别(如语法差异、状态管理方式、学习曲线)。

    Webpack的作用(模块打包、代码分割、资源加载优化)。

    按需加载的实现(如动态import()、React.lazy)。

    ES6与浏览器

    ES6常用特性(如箭头函数、let/const、解构赋值、Promise)。

    用户输入URL到页面显示的过程(DNS解析、TCP连接、HTTP请求、渲染解析)。

    上述过程的优化点(如DNS缓存、CDN加速、资源压缩、懒加载)。

    浏览器缓存机制(强缓存、协商缓存、Service Worker)。

    网络与安全

    TCP三次握手过程(SYN、SYN-ACK、ACK)。

    遇到的安全问题及解决方案(如XSS防御:输入过滤、CSP;CSRF防御:Token验证)。

    计算机基础

    进程与线程的区别(资源分配单位、通信方式、开销)。

    大学学过的编程课程(如数据结构、操作系统、计算机网络)。

    常见数据结构及区别(如数组与链表、栈与队列)。

    排序算法原理(如冒泡排序的相邻比较、快速排序的分治思想)。

整体总结:腾讯前端暑期实习面试涵盖基础技术、项目经验、计算机基础及软技能,需扎实掌握前端核心知识(如React、HTTP、性能优化),同时具备项目管理和问题解决能力。三面逐渐深入技术细节与底层原理,建议提前复习数据结构、网络协议等基础知识,并梳理项目中的技术难点与优化方案。