📍面试公司:腾讯
🕐面试时间:2025.7.28
💻面试岗位:前端开发
❓面试问题:
自我介绍
简单描述Vue3里面的响应式数据原理
讲一下这个过程中的虚拟节点技术
这个虚拟节点是必需的吗?
Vue3里面的组合式API主要是为了解决什么问题?
目前常用的打包工具?
简单对比Vite和web pack的区别
Vite为什么会快一点呢?
为什么webpack一定要构建整个大项目呢?
简单描述一下webpack工作流程
用的什么node管理工具?(我用npm,说的pnpm,因为后者我也了解,感觉更能得到面试官认可)
为什么pnpm比npm更快?
再来请你分享一下,有没有一些前端的项目的优化经验,就比如说一个项目它的加载、打开、渲染的速度的优化,或者说打包大小方面的优化。
浏览器有哪些性能分析工具?前端页面有哪些性能指标?
讲一下BOM和DOM的概念
说一下闭包的含义,有什么缺点?怎么避免内存泄露?怎么判断闭包结束时间?
说下JS的垃圾回收机制
描述防抖和节流两个概念,描述使用具体场景
对node有了解吗?
为什么选择fastAPI?
---------------------分割线-------------------------
手撕(高强度,从没见过考这么多的,前端JS,算法题,还有SQL都考了):
(用Vue3和JS写)实现一个组件,组件分为左右两块:左侧模块:展示可选列表,比如:[A,B,C,D,E],每一项是一个checkbox,可以勾选和取消勾选;右侧模块:展示已选列表,比如左侧勾选了A和(,那么右侧则显示A和( 两项,并且每一项旁边有个删除按钮,点击删除后,左侧对应的项也会取消勾选。
实现一个函数,满足:输入是一个嵌套的数字数组,输出是平铺的数组,如:输入: [1,[2, [3]], [4, 5]]输出: [1,2,3,4, 5]
每一个正整数都可以分解成2的幕的和,如:13=2^3+2^2+2^0实现一个函汎鄞嗞録鲐列豹,满足:输入:13输出: [3,2, 0]
如果当2的幂的系数不是1的话,这个分解方法不止一种,如:13=13*2^0,输出13个013=11*2^0+2^1,输出11个0和一个1请实现一个函数,可以输出每个正整数能分解成多少种2的幂的和
请建一个SQL表,用于记录每一位学生选课的情况,表中的每条数据用 student id 和 course id 记录某一名学生选择了某一门课程。
每位学生可以选择多门课程,每门课程也可以有多名学生选择。
实际查询中会分别基于 学生的维度 和 课程的维度 查询数据。
请写出一个sql,查询出每一位学生选课的数量,需要返回 student id 及其选课数量。
---------------------分割线-------------------------
你最近在学习什么新技术吗?(我说TS)
讲一下JS和TS区别
具体怎么规划自己学习一个新技术的?
🙌面试感想:
这次面试可以称作我面试历史上最痛苦的一次,没有之一,拷打了我整整一个半小时!一个半小时啊!你们知道我这一个半小时是怎么过的吗?我现在真后悔接受了这次面试,楼主目前是已经在实习的,本来不想再进行任何实习的面试的,结果腾讯的HR突然给我打电话了,说他们IEG某某部门还有一个实习生HC,就把我捞起来了(楼主之前CISG挂了,WXG捞我一次都给拒了),当时想了想,就寻思试一试吧,他们缺人万一要求低呢?结果就拷打我一个半小时,还问的贼难,没遇见过这么难的,早知道当时就不应该脑子一热同意
全部评论
(5) 回帖