前端开发实习生一面、二面面经合集
完整信息
本篇目录
一面复盘
自我介绍略
项目拷打
- 你第一个澳洲留学生的租房平台,你能讲一下整体的技术架构吗?为什么选react19+next.js+tRPC? 用next.js是为了做SEO权重优化。本身这个平台有房源信息和文章内容需要SEO,比较适合SSR,而且文章它并不是频繁变更的信息所以也很适合ISR,所以用next.js做。用trpc是对一个全栈应用的最佳实践。用它就有了端到端类型安全、把TS的威力完全发挥出来,就不需要维护接口文档、不需要担心运行时错误、可以安全重构接口、可以用zod校验用户数据
- 你是怎么进行响应式架构优化和体验优化的? 原本项目仅仅在桌面端是美观的,但是在移动端就会有问题,看了代码发现是因为这些组件对于很小宽度的断点没有做样式处理,比如说一个搜索框宽度小了之后placeholder就会把搜索框顶出容器。我做的就是完成所有组件的响应式改造,确保他们从sm宽度到xl宽度都是美观的,并且在一些断点改变大组件的位置和折叠。
- 乐观更新和失败回滚的机制你是怎么实现的?
- 你的文章懒加载是怎么实现的?不会造成前端无限发起下一页请求吗?
- 有没有预加载机制?滑到底才开始发请求吗?
- 了解AI流式获取对话内容吗?
- 了解SSE吗?
- 你的导航小程序的迪杰斯克特拉和ASTAR算法有什么区别? 他们在实际时间上会有一些区别,虽然他们理论复杂度都是(e+v)log(v)的,但是Astar有启发式函数,实际上更快,但是一个近似解,不是最短路径。如果起点和终点很远,我们会用A*,比较近就会用迪杰
- 讲一下你的自研调试页面是什么?矫正坐标节点的调试工具的设计思路?
- 你以前的项目为什么选择了vue3?(vue3做AI对话有优势吗?用什么md渲染库?)
- 你的知识图谱组件为什么用d3.js实现而不是echarts实现?
- 你的基于echarts的脑电图是怎么做的?
- 你用过react和vue3,觉得他们有什么区别?
前端八股
主流的浏览器内核?主流浏览器?行内元素和块级元素的区别?html5的新特性?用过canvas吗?常用的图片格式?常用的字体尺寸单位?em和rem的区别?盒子模型有哪几类?bfc了解吗?水平垂直居中的各种方法?重排和重绘?js数据类型?箭头函数和常规函数的区别?闭包?创建对象的过程?原型链?async/await?js事件循环?宏任务和微任务?什么是构造函数?用什么运算符创造构造函数?(function或class)跨域问题和解决方法?
- 了解过XSS攻击和CSRF漏洞吗?(知识盲区)
- 浏览器缓存?session storage和local storage的区别?
- 搜索一个网站从输入网址到内容渲染经过哪些步骤?
- v8引擎的垃圾回收机制?
- 遇到过内存泄漏吗?什么行为会造成内存泄漏?
算法题
无重复字符的最长子串
实现深拷贝函数
合并有序数组
都比较简单,做过就能会
二面复盘
自我介绍被面试官一眼发现是在念稿子,被强调不许用AI面试...吓死了
项目追问
- 你的澳洲租房项目是练手项目还是真实存在的?你怎么会参与到一个国外项目呢?
- 你在里面负责前端的哪些工作?
- 你的三端适配是h5还是app?哪三端?
- 我觉得有问题,你的网址的传播途径是什么?小红书、微信群不是有自己的webkit服务去渲染外链吗?你在手机端的默认浏览器测试怎么能测出问题呢?
- 为什么不直接做成微信小程序?微信不是能把h5页面一键转成小程序吗?(web-view直接套壳)
- 你在你们团队充当什么样的角色?
- 你测试三端浏览器的时候,三端之间最多的差异点在哪里?只有字体上的差异吗?
- 没有碰到不同浏览器对CSS规范的支持问题吗?例如safari和webkit在CSS的规范上有什么不同,了解吗?
算法题
判断域名A是否是B的子域名
先判断边界:B本身是不是B的子域名?4级域名是不是1级域名的子域名?
这么简单的题写了48分钟,遂挂。
本篇目录
当前问题0134
- 01
自我介绍略
- 02
你第一个澳洲留学生的租房平台,你能讲一下整体的技术架构吗?为什么选react19+next.js+tRPC? 用next.js是为了做SEO权重优化。本身这个平台有房源信息和文章内容需要SEO,比较适合SSR,而且文章它并不是频繁变更的信息所以也很适合ISR,所以用next.js做。用trpc是对一个全栈应用的最佳实践。用它就有了端到端类型安全、把TS的威力完全发挥出来,就不需要维护接口文档、不需要担心运行时错误、可以安全重构接口、可以用zod校验用户数据
- 03
你是怎么进行响应式架构优化和体验优化的? 原本项目仅仅在桌面端是美观的,但是在移动端就会有问题,看了代码发现是因为这些组件对于很小宽度的断点没有做样式处理,比如说一个搜索框宽度小了之后placeholder就会把搜索框顶出容器。我做的就是完成所有组件的响应式改造,确保他们从sm宽度到xl宽度都是美观的,并且在一些断点改变大组件的位置和折叠。
- 04
乐观更新和失败回滚的机制你是怎么实现的?
- 05
你的文章懒加载是怎么实现的?不会造成前端无限发起下一页请求吗?
- 06
有没有预加载机制?滑到底才开始发请求吗?
- 07
了解AI流式获取对话内容吗?
- 08
了解SSE吗?
- 09
你的导航小程序的迪杰斯克特拉和ASTAR算法有什么区别? 他们在实际时间上会有一些区别,虽然他们理论复杂度都是(e+v)log(v)的,但是Astar有启发式函数,实际上更快,但是一个近似解,不是最短路径。如果起点和终点很远,我们会用A\*,比较近就会用迪杰
- 10
讲一下你的自研调试页面是什么?矫正坐标节点的调试工具的设计思路?
- 11
你以前的项目为什么选择了vue3?(vue3做AI对话有优势吗?用什么md渲染库?)
- 12
你的知识图谱组件为什么用d3.js实现而不是echarts实现?
- 13
你的基于echarts的脑电图是怎么做的?
- 14
你用过react和vue3,觉得他们有什么区别?
- 15
主流的浏览器内核?主流浏览器?行内元素和块级元素的区别?html5的新特性?用过canvas吗?常用的图片格式?常用的字体尺寸单位?em和rem的区别?盒子模型有哪几类?bfc了解吗?水平垂直居中的各种方法?重排和重绘?js数据类型?箭头函数和常规函数的区别?闭包?创建对象的过程?原型链?async/await?js事件循环?宏任务和微任务?什么是构造函数?用什么运算符创造构造函数?(function或class)跨域问题和解决方法?
- 16
了解过XSS攻击和CSRF漏洞吗?(知识盲区)
- 17
浏览器缓存?session storage和local storage的区别?
- 18
搜索一个网站从输入网址到内容渲染经过哪些步骤?
- 19
v8引擎的垃圾回收机制?
- 20
遇到过内存泄漏吗?什么行为会造成内存泄漏?
- 21
### 无重复字符的最长子串
- 22
### 实现深拷贝函数
- 23
### 合并有序数组
- 24
自我介绍被面试官一眼发现是在念稿子,被强调不许用AI面试...吓死了
- 25
你的澳洲租房项目是练手项目还是真实存在的?你怎么会参与到一个国外项目呢?
- 26
你在里面负责前端的哪些工作?
- 27
你的三端适配是h5还是app?哪三端?
- 28
我觉得有问题,你的网址的传播途径是什么?小红书、微信群不是有自己的webkit服务去渲染外链吗?你在手机端的默认浏览器测试怎么能测出问题呢?
- 29
为什么不直接做成微信小程序?微信不是能把h5页面一键转成小程序吗?(web-view直接套壳)
- 30
你在你们团队充当什么样的角色?
- 31
你测试三端浏览器的时候,三端之间最多的差异点在哪里?只有字体上的差异吗?
- 32
没有碰到不同浏览器对CSS规范的支持问题吗?例如safari和webkit在CSS的规范上有什么不同,了解吗?
- 33
### 判断域名A是否是B的子域名
- 34
先判断边界:B本身是不是B的子域名?4级域名是不是1级域名的子域名?
