遇到最难的一次面试了,压力很大,全长快两个小时了。。鼠鼠G了。。
(1)平时是怎么去学习前端的?
描述个人学习前端的方法,如在线课程、技术社区、博客、项目实践等。
(2)做 GPT 项目的背景和根源?
介绍GPT项目的目的、背景以及你参与该项目的初衷和过程。
(3)讲一讲流式渲染是什么,以及你在项目中是如何使用的?
(4)Websocket 跟 HTTP,优缺点?Websocket建立连接的过程,需要详细一点。通讯协议是什么,有哪些?
(5)说一下Pinia持久化的原理?有哪些实现方式?用插件实现的,那这个插件是做了什么事情?
Pinia持久化通过将状态存储在本地存储中实现,可以通过插件自动同步状态到localStorage或sessionStorage。
(6)看代码题:宏任务与微任务、原型链、构造函数、this的指向
(7)this 是什么东西,有什么用,我可以拿他来干什么?有什么运用场景?
(8)new 一个对象或者函数的时候,它中间发生了什么事情?原理是什么?
使用new操作符创建对象时,会经历创建对象、链接原型、设置this值、执行构造函数和返回新对象等步骤。
(9)算法题:求最长上升子字符串?
描述并实现一个算法,找出给定字符串中的最长上升子序列。
(10)当输入 URL,按下回车,浏览器发生了什么事情?
(11)在解析html的时候,遇到js会暂停解析html,你有什么办法来让它不暂停吗?
讨论如何通过异步加载JavaScript文件(如使用async或defer属性)来避免阻塞HTML解析。
(12)CSS有什么可以实现动画的?
(13)知道跨域嘛?要怎么进行解决?有什么方式?
讨论跨域资源共享(CORS)的概念和解决方法,如设置Access-Control-Allow-Origin响应头。
(14)如何去保证、判断用户的登录态?
描述如何通过会话管理(如使用cookie、localStorage或token)来维护用户的登录状态。
(15)在vue中有响应式,讲一下响应式是什么?以及如何实现响应式?
Vue中的响应式系统允许数据的变化自动更新到视图层,通过依赖追踪和发布订阅模式实现。
(16)能用原生的方式,不借助vue去实现响应式嘛,怎么实现,有什么方式?
(17)pnpm有什么用?他跟npm、yarn有什么区别?你为什么要选择pnpm,他是有什么优势嘛?
#软件开发笔面经#