27 届前端 5.30 合并两场面试面经

## 时长 70 分钟 北京合思招聘系统

### 1.自我介绍环节

### 2.做题环节(20 分钟左右)

有 22 道选择(html,css,js,数据结构),一道算法题:字符串去重,我和面试官简单说了一下思路(new Set),然后他让我随便写一点交卷了

### 3.项目,场景和八股环节(这个环节持续太长了,有些我实在是忘了)

1.你是如何做到首屏优化的

2.讲讲 CI/CD 是如何实现的

3.项目中有使用过 webpack 和 vite 吗

4.webpack 和 vite 有什么区别

5.有没有使用过什么状态管理工具

6.项目使用了什么缓存机制

这里我展开讲讲。关于缓存数据,蜀黍使用了缓存头(Cache-Control)和 localStorge。项目中使用了 Promise.all 来进行并发请求,同时从服务器和本地缓存请求数据

7.怎么获取的缓存数据

localStorge,状态码 304

8.缓存的过期时间

9.NextJS 中如何设置代码在客户端运行

10.NextJS 如何设置服务端运行(好像是这个问法)

11.useEffect 中如何进行数据请求(丝滑切换至场景题)

12.如果不同 useEffect 中相互依赖过多怎么办(反问面试官,竟然是退化至使用类式组件)

13.如果我想让我的 useRef 使用外部的 props 应该怎么办(forwardRef)

14.当我的父组件将一个可能会经常变化的 props 传递给子组件时,应该怎么办(useMemo)

15.我想全局管理 props,并且防止出现 props drill 的问题,应该怎么办(useContext)

16.我想使用 useRef 来实现一个可以返回窗口顶部的功能,应该怎么实现,使用哪些 API

17.我想将一个二维数组转换为一维数组怎么办

18.如果我的二维数组中不完全都是数组怎么办(instanceof、Array.isArray)

19.实现 add(1)(2) === 3 (函数柯里化)

20.如何实现 string 和 number 之间的相互转换

21.如何改变 this 的指向

22.你有没有用过什么 ES6 的新特性

23.Promise 打印顺序

```javascript
const promise = new Promise((resolve, reject) => {
  console.log(1)
  resolve()
  console.log(2)
})

promise.then(() => {
  console.log(3)
})

console.log(4)
```

24.有没有使用过 typeof

25.flex 布局中如何实现水平垂直居中

26.如何消除 float 带来的影响

27.给定一个完整的 URL,如何获取其查询参数

28.React 19 和 React 18 有什么区别

29.项目中是否有采用什么对静态资源的优化

可能还有,但是暂时想不起来了

## 时长 15 分钟 洋葱学园

1.对于一个列表,我们通常会给其添加一个 key,可以不添加吗,如果不添加是否有什么问题?

2.对于一个 H5 页面加载过慢,如何优化

3.将 URL 输入搜索栏,浏览器会做什么

4.如何实现进入视窗才进行懒加载

5.如何在一个 JS 文件中白屏时返回 Loading 组件(我直接说了 React 和 NextJS 中如何实现哈哈)

6.移动端适配
7.如何处理重复的请求(本人说了 axios cancelToken、防抖和节流解决这个问题)

我确实记得应该还有,但是想不起来(
全部评论
好难
点赞 回复 分享
发布于 06-24 11:13 云南

相关推荐

一、岗位与经历相关1. 介绍在吉比特雷霆游戏岗位负责的具体工作内容(如营销活动、H5页面等)。2. 你的岗位要求中提到需要哪些技术能力(如前端、服务端基础、小游戏经验等)?3. 介绍你的教育背景(学校、专业)及前端学习经历(Vue/React掌握程度)。4. 讲讲你的两段实习分别做了什么?5. 你近期参与了哪些开源项目(如OMI框架)?具体贡献了什么?6. 你开发过哪些小工具或技术探索项目(如Markdown预览器、Three.js游戏)?二、技术问题(深入探讨)1. 开源与工具开发7. 你参与的开源编辑器(模仿BigMall)是为了解决什么问题?腾讯为什么要做这个编辑器?8. 这个编辑器的底层引擎是什么?开发模式是怎样的(如团队分工、流程)?2. 性能优化9. 你在实习时如何优化动画S5编辑器的webpack打包性能?具体用了什么方案?10. 你提到的SMR热更新是如何实现的(核心机制)?11. 移动端适配你用了rem和CSS媒体查询,吴湖生建议用PX+Webpack插件转rem,你怎么看?12. 水产养殖系统里为什么把PNG图片换成Webp?还用了哪些优化手段(如CDN/SSR)?13. 前端单页面应用和SSR在首屏渲染上有什么区别?从SEO角度为什么推荐SSR?14. 大屏可视化项目中3D图表卡顿,你是怎么优化的(如何切换2D/3D)?15. 前端盒子模型有哪两种(标准/怪异)?它们的宽高计算有什么区别?3. 前端基础与原理16. Vue 2的响应式原理是什么(如何实现依赖收集和更新)?有哪些缺点(如数组、对象操作)?17. Vue 3的响应式原理和Vue 2有什么区别(Proxy的作用)?18. Vue 2依赖收集时用的数据结构是什么(吴湖生问但未答出)?19. Vue 2中数组索引变化和新增/删除对象属性为什么监听不到?怎么解决(deep/watch)?20. Vue 2中是如何重写数组方法(如push)来实现新增项通知依赖的?具体怎么实现?21. webpack打包的完整流程是什么(从入口到输出)?生产环境优化方案有哪些(如Tree Shaking)?22. webpack中loader的作用是什么?它的执行顺序是怎样的(从上到下/从右到左)?4. 其他技术23. HTTPS和HTTP有什么区别(加密/安全性)?HTTPS的实现原理是什么(握手过程)?24. 你认为前端性能优化的核心指标有哪些(如首屏加载、渲染时间)?具体优化方法是什么(如懒加载、CDN)?三、代码实践25. 用递归实现一个深拷贝(现场编码,考察逻辑与实现细节)。四、面试流程相关26. 你之前技术面的表现如何?接下来可能有HR面吗?27. 你知道吉比特(雷霆游戏)的办公地点在深圳吗?28.什么时候知道结果?大概一周
查看25道真题和解析
点赞 评论 收藏
分享
评论
4
11
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务