news 2026/10/31 7:03:20

简历高频基础问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
简历高频基础问题

模块分层和容器预热是做了什么,数据怎么测得

模块分层是只把首屏视口内的组件打入主bundle,其余需要滚动才进入视口的组件通过defineAsyncComponent + 动态import导入生成独立chunk,滚动到区域再加载,提高首屏加载速度

容器预热主要是针对秒杀这种高概率跳转场景做的优化,进入秒杀商品超过60s后触发预热,使用link-modulepreload来预下载和解析下单填写页模块,点击下单跳转后可直接开始渲染,省去了下载和解析的时间

体积是直接比较build后的体积,inp在main.js顶部埋点,Vue 实例创建之前,用的web-vitals,inp通常是页面刚加载完的场景是最大的,这时候主线程可能还在做其他任务,没法及时响应,首帧时间缩短是在路由跳转前埋点,使用performance.now标记现在时间,在mounted里结束,计算时间差值

多级资源预加载是做了什么

对资源按重要程度分为三个程度做预加载,首先最重要的首屏资源直接静态import立即加载,然后首屏下需要滚动才能看见的资源使用link-preload在lcp的回调里开始加载,link-proload的优先级比静态import的高,在lcp回调里加载可以避免抢占首屏带宽,lcp加载完时首屏基本已经加载完成,最后是弹窗这种的资源就放在ric里用link-prefecth加载或者到用到的时候再动态import加载

异步并发治理是做了什么

首先采用async/await控制接口执行顺序,避免一些接口的前置条件缺失,同时封装请求调度工具,对重复请求进行拦截,同时对于同接口不同参数高频请求,每次请求前取消旧请求避免竞态问题

大文件上传做了什么

首先通过slice方法对文件进行切片,然后用spark-md5进行增量md5计算,逐片读取计算,然后向后端询问已上传分片列表,过滤掉已上传的后继续上传,最后通知后端合并

说一下虚拟列表实现思路

首先计算整体高度,容器撑开实现滚动条,然后计算索引起始范围,开始索引是(scrollTop / itemHeight)- buffer,结束是开始索引加可视条数+2*buffer,通过索引范围slice可视子集,用translateY来偏移可视窗口模拟真实滚动效果,走GPU合成不会触发重排,对滚动事件用raf做节流,避免高频触发回调计算

实时搜索框竞态怎么解决的及封装思路

实现对输入搜索做防抖处理减少请求次数,然后每次请求先用controler.abort()取消之前的请求,同时用axios.isCancel过滤掉主动取消的请求,不进行错误弹窗,然后再发新的请求。

封装思路,参数传入搜索关键词keywords,请求函数及delay延迟,内部定义data和loading作为返回值,以及封装的核心:定时器和controller,还有清理函数,再使用wantch监听keywords,有变化先调用清理函数清理旧请求,然后新建控制器传入请求函数发送新请求,最后在卸载时自动清理

说一下流式对话的实现思路

正常发送fetch请求,用getReader从response.body上得到可读流对象,然后用read方法持续读取知道done为true,用TextDecoder对读取的流进行解码。和后端约定用双换行分割每条消息,收到的消息先存在buffer里,如果有完整的消息就取出来解析渲染,剩下的继续留在buffer里,解决粘包问题

对md做增量解析,以md中的空行做分割,每次解析的内容先放在暂存区,解析到空行就把暂存区的固化,添加到稳定区

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/31 7:01:23

AI时代程序员生存指南:从码农到AI操控师,收藏这份学习计划!

文章探讨了AI对程序员的影响,指出AI会淘汰部分程序员,但不会让程序员岗位消失。程序员需要与AI融合,成为AI操控师。文章详细介绍了AI的核心概念、常用工具、使用技巧以及AI编程的具体内容,建议程序员学习主流AI开发框架&#xff0…

作者头像 李华
网站建设 2026/10/31 7:01:07

优秘智能培训与生态:产品实践、FDE与优秘圈怎样衔接

企业部署AI产品之后,还需要让使用者掌握资料准备、任务组织、结果检查与问题反馈。产品入口提供能力,岗位人员决定怎样把能力放进工作。缺少相应使用方法,软件功能与业务流程之间仍可能留下交接空白。优秘智能把产品、培训、实践与生态协作连…

作者头像 李华
网站建设 2026/10/31 6:58:41

高精度紧固件:技术突破、全球布局与东南亚战略支点

近年来,精密紧固件已悄然超越传统‘工业牙齿’的定位,正成为衡量一国高端装备基础制造能力的重要标尺。在新能源汽车、航空航天、半导体封装设备、医疗机器人等高附加值领域持续放量的背景下,对公差控制≤2μm、抗拉强度≥1400MPa、表面处理耐…

作者头像 李华
网站建设 2026/10/31 6:56:57

MyBatis操作数据库(入门2)

目录 1.MyBatis操作数据库 1.参数重命名Param注解 加Param 不加Param 2.增Insert 1.传递多个参数 2.传递对象 3.补充:Integer返回值代表这个操作 影响的行数 是多少 4.给对象加注解Param 改为: 为什么会有这种现象? 5.Options获得…

作者头像 李华
网站建设 2026/10/31 6:56:17

程序员效率神器:10个拿来即用的Python自动化脚本,解放你的双手

你是不是也同样感到了厌倦, 因为每天上班的时候, 都会被各式各样的机械而且重复的文件操作给缠住? 有没有觉得自己更像是一个高级的文件搬运工, 而不是一个能够解决问题的工程师呢?实际上, 很多那些枯燥的日常任务, 只需要用上几行简单的脚本就可以轻松地把它们搞定好, 这样的…

作者头像 李华