腾讯音乐TMEQQ音乐线前端一面面经

#腾讯音乐26届实习# 3.20号晚上七点面试 纯纯八股盛宴 一点手撕和智力题都没有 纯问了40多分钟
上来介绍完自己和项目后 开始八股盛宴
1.讲讲CSS盒模型
2.如何实现单行文本和多行文本溢出隐藏
3.移动端适配怎么做的(rem加媒体查询修改根节点font-size)
4.webpack的构建流程
5.webpack热更新原理
6.vue2和vue3的区别
7.SPA和MPA的区别以及优缺点
8.对单页面路由的理解
9.常见的网络状态码
10.问了问掌握哪些即时通讯技术:websocket 轮询
11.浏览器渲染进程
12.讲讲强缓存和协商缓存的区别 (我还补充了一个启发式缓存)
13.服务端渲染的一个作用
14.小程序分包进行懒加载,这个是具体怎么做的
15.axios请求和响应拦截器做了什么,二次封装怎么做的
16.跨域上是怎么做的(讲了cors 后端去配置响应头)
17.图片懒加载和滚动加载怎么做的(app.directives+vueuse)
18.讲讲向上滚动加载和向下滚动加载的原理 (一开始只讲出来了向下 后面面试官提醒)
19.重新讲讲大文件分片上传的整套流程
20.讲讲项目里组件的封装是怎么做的
21.在日常开发中有使用AI吗 (感觉这个问题太常见了 一定要准备一下)
22.讲讲前端渲染性能的优化手段

纯纯八股 然后终于到了反问环节

——————————
后续:
已挂 估计是我把面试的时间改的太晚了 直接给我GG了
再后续:
今天上官网一看 **进复试了 这是啥情况
再后续:二面 三面 hr都面完了 然后现在offer阶段
全部评论
后续面有手撕吗
点赞 回复 分享
发布于 04-11 22:04 重庆
有后续吗上周面了变复试但没面试邀请
点赞 回复 分享
发布于 03-31 21:32 广东
要求开摄像头嘛
点赞 回复 分享
发布于 03-31 17:57 江苏
无手撕?
点赞 回复 分享
发布于 03-27 12:21 江苏
晚上7点还好
点赞 回复 分享
发布于 03-21 21:11 北京
点赞 回复 分享
发布于 03-21 10:53 江苏

相关推荐

1. display: none 和 visibility: hidden 的区别• 渲染层面:◦ display: none:元素完全从渲染树移除,不占据空间(回流+重绘)。◦ visibility: hidden:元素仍在渲染树中,占据空间但不可见(仅重绘)。• 子元素影响:◦ display: none:子元素也会被隐藏。◦ visibility: hidden:子元素可通过 visibility: visible 单独显示。2. 三列布局(两边固定,中间自适应)方案1:Flex 布局.container { display: flex; }  .left, .right { width: 200px; }  .center { flex: 1; }  方案2:Calc 计算.center { width: calc(100% - 400px); margin: 0 200px; }  方案3:绝对定位 + margin.container { position: relative; }  .left, .right { position: absolute; width: 200px; }  .center { margin: 0 200px; }  3. 闭包• 定义:函数内部引用外部作用域变量,且变量在外部作用域释放后仍被保留。• 作用:实现私有变量、函数防抖/节流等。• 注意:过度使用可能导致内存泄漏。4. React 状态管理方案及区别方案 特点 ** useState** 组件级状态,适合简单逻辑。 ** useContext** 跨组件状态,适合全局轻量级状态(避免逐层传递 props)。 ** Zustand** 轻量级全局状态管理,基于 Context + immer,支持订阅和模块化。 ** Redux** 复杂全局状态管理,需手动配置 reducer、action 等,适合大型应用。 5. 虚拟列表实现• 核心原理:仅渲染可见区域内的列表项,通过滚动事件动态计算并更新显示内容。• 关键步骤:1. 计算可见区域起始索引和结束索引。2. 渲染对应索引的列表项。3. 通过 transform 或 padding 模拟滚动位置,保持滚动条正常显示。6. React 性能优化• 组件优化:◦ 使用 React.memo 缓存函数组件,避免无必要重渲染。◦ useCallback 缓存回调函数,避免子组件因引用变化重渲染。• 状态优化:◦ 避免在 useState 中存储不必要的状态(如临时计算值)。◦ 使用 useReducer 处理复杂状态逻辑,减少重复更新。• 其他:◦ 虚拟列表/表格(长列表优化)。◦ 懒加载(React.lazy + Suspense)。◦ 避免内联函数在渲染中重复创建。7. React 的状态(补充常见问题)• 状态更新异步性:◦ 合成事件和生命周期中,setState 异步更新,需通过回调获取最新值。◦ 原生事件(如 setTimeout)中,setState 同步更新。• 状态穿透问题:◦ 多层组件传递状态时,可用 useContext 或状态管理库简化。8. 代码题:生成有效括号组合(回溯法)var generateParenthesis = (n) => {    const res = [];    const backtrack = (path, left, right) => {      if (path.length === 2 * n) res.push(path);      if (left < n) backtrack(path + '(', left + 1, right);      if (right < left) backtrack(path + ')', left, right + 1);    };    backtrack('', 0, 0);    return res;  };  思路:通过回溯法枚举所有可能,用 left 和 right 控制左右括号数量,确保任意时刻 right ≤ left 且总数不超过 n。
点赞 评论 收藏
分享
评论
18
50
分享

创作者周榜

更多
牛客网
牛客企业服务