嘉为科技前端一面

1.自我介绍
2.怎么学的前端,学什么
3.vue2和vue3响应式原理的区别
4.webpack和vite的区别,vite为什么比webpack快呢?
5.箭头函数和普通函数的区别
6.你知道promise有哪些api,你刚刚提到了Promise.all,和Promise.allSettled,这两个有什么区别?
7.看你自己的项目里面写了二次封装了axios,自己做了请求器和拦截器,在这个过程中做了什么?
8.看你实现了图片懒加载,讲讲图片懒加载吧
9.上一份实习你学到了什么?
10.看你会ts,讲讲ts怎么定义的类型
11.讲讲ref和reactive的区别,那我给reactive的一个对象赋值,会不会触发响应式?
全部评论

相关推荐

2025-12-27 22:49
门头沟学院 Java
点赞 评论 收藏
分享
2025-12-25 12:13
门头沟学院 全栈开发
12.25 深圳锐明技术 面试:标记:M 面试官 W 我## 1.场景题:对一个考生的答题应用场景,如何避免考生同时打开两个页面的错误?W;回答使用布尔值,存储在 localStorage,M;存储本地还是后端数据库呢?怎么拦截用户打开新的页面呢?W;当用户结束答题的时候改为 false,M;但是如果断网了,或者直接关闭了浏览器,那么布尔值没有按照正常的逻辑被修改怎么办?W;在服务端判断用户端的网络状况,如果断网了或者关闭了浏览器 及时修改布尔值 但是应该不行?我现在的想法是使用 Websocket 退出会话就代表会话结束了# 2.场景题:虚拟滚动的核心原理W;数值计算: ViewHeight scrollHeight 每行数据的高度 height前端计算 startId 和 limit 然后发送请求IntersectionObserver 的浏览器 API M;面试官对这个提出疑问,说什么得提前渲染节点M;如果行高不唯一呢?如何兼容行高不固定的场景。W;我回答使用哈希表来记录M;用户准备从虚拟列表的第一页切换到第二页了,但是有人在后台中新增了两个数据添加在虚拟列表的最开始,那么原先的第二页需要展示 10-20 对应的数据,但是现在可能展示的是原先的 8-18 对应的数据,那么用户已经在第一页浏览过这个数据了,请问如何优化用户的体验呢?W;虚拟滚动本身就有缓存区会缓存 DOM 节点。。# 3.Canvas 和 SVG 的区别W;不太清楚# 4.JWT 的 token 登录逻辑W;refresh-token / access-token 存储位置 安全防范 过期时长请求和响应拦截器 返回 401 错误 无感刷新 token 的实现 使用 isRefeshing 标记来避免重复调用刷新 token 的接口M;多标签页怎么构建请求队列,第二个标签页怎么监听到第一个标签页的 token 已经刷新完了呢?我感到很疑惑,面试官说两个标签页的内存是不共享的,那么请求队列使用的也不是一个内存里的变量,第二个页面不知道第一个页面的 token 是否刷新成功?内存不是跨标签页的???我感到很疑惑。# 5.Vue 和 React 中的遍历 v-for 为什么需要 key 这个关键字M;手写三个 div 为啥不需要 key 但是使用遍历就需要 key 呢?# 6.图片懒加载M;图片进入页面才加载怎么实现 我回答 IntersectionObserverM;如果页面中的按钮突然加载出来,把图片顶到下面去了,那用户刚好点击了这个怎么办?我觉得需要有骨架屏把图片的占据位置就固定的,不可以频繁的变化,这样子引起的重绘太多,# 7.Echarts 图表渲染如果后端返回的数据有很多的小数点很精确该怎么渲染呢# 8.Nextjs 的服务端组件和客户端组件渲染的区别SSR 的渲染和 CSR 的区别水合脚本 js 静态页面--》动态页面服务端组件的限制 这个没回答出来面试官很失望。# 9.介绍 TS 的泛型解决的问题没回答出来interface 和 type 的使用上的区别# 10.在移动端 CSS 如何实现特别小的字体比标准字体更小# 11.算法题:计算字符串中回文子串的数量我回答的是二维 dp 数组实现动态规划的状态转移,面试官说可以只使用一个指针,然后以这个指针为中心去遍历两边对称的回文子串 ,这样子空间复杂度优化了,同时也只需要一个指针。状态转移方程 我的复杂度是 O(n2)总结:凭什么我反问面试官的都是开放性问题,我下次直接拿面试题问他,shame!。
查看19道真题和解析
点赞 评论 收藏
分享
评论
2
5
分享

创作者周榜

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