- 博客(5)
- 收藏
- 关注
原创 前端虚拟列表深度拆解
用户列表:10 万条;表格里还有:多列、复杂 DOM、hover、操作按钮、状态标签。4. 偏移量(offset / translateY):让当前渲染的 items。因为:同一条数据在不同 scrollTop 下会复用 DOM,key 必须全局唯一。总的来说虚拟列表就是只渲染可视区域内的列表项,而其余的用占位高度“假装存在”,这个是最简单的,真是项目中大量列表数据一般都是每一项数据都是高度固定的。假设所有 item 都渲染后的总高度(假的,但要算出来)):实际渲染 = 10 + 4 = 14 条。
2026-02-03 19:39:16
1125
原创 Web Worker 实战:从零实现支持秒传的大文件分片上传方案
可以传的数据类型包括:Object、Array、String、Number、Map / Set、ArrayBuffer、TypedArray、File / Blob。所有 DOM 渲染、事件响应、动画都在主线程、一旦你执行大量计算 → 页面卡死。改成 Worker 后:计算在子线程执行、UI 依然流畅、用户体验巨大提升。条件不再满足而退出),老板才会说:“好,全文件上传任务圆满结束!不能传:DOM、window、document、function。
2026-01-30 15:22:35
900
原创 深入理解 JavaScript Promise 与事件循环
官方说法:Promise 是一个用于表示异步操作最终结果的对象。人话版:Promise 就是一个“承诺”:现在结果可能还没出来,但将来一定会给你一个结果(成功 or 失败)。比如:请求接口(不知道什么时候返回)、读取文件、定时任务、图片上传等这些都需要 Promise。方法成功条件失败条件典型用途resolve直接成功不会失败包装值reject不会成功直接失败快速中断all全部成功任一失败多接口并发race第一个完成第一个失败超时控制allSettled。
2026-01-28 17:10:30
1077
原创 一篇搞定 JavaScript 数组与字符串高频方法(附真实场景 + 个人使用心得)
刚开始学 JS 时,我处理数组几乎全靠for循环;面试时被问到经常卡壳;真正进了项目才发现: 熟练使用这些方法,代码可读性和效率完全是两个世界。这篇文章,我帮你系统整理:前端开发中最常用的数组方法、字符串高频 API、真实业务场景和性能提升等适合:初学 JS 、正在准备面试、想提升代码质量的前端开发者因为你每天都在做这些事:接口数据格式转换表格筛选、搜索权限控制URL 参数处理文本处理这些几乎全部靠数组和字符串方法完成。
2026-01-27 22:29:27
529
1
原创 React-Router 6
动态路由参数用于标识具体资源,比如用户详情页、商品详情页等,是路径语义的一部分;而 query 参数用于控制页面状态,比如分页、筛选、搜索、排序等,不改变页面本身身份。后端返回用户权限列表,前端根据权限动态过滤 useRoutes 路由表,实现页面级权限控制。同时结合路由参数,在页面内做资源级校验,配合 403 页面形成完整权限闭环。菜单也基于同一份权限配置动态生成,保证权限与体验一致。用于:登录成功跳转、权限校验失败跳转、操作完成跳转等。用于:企业项目、动态路由、权限路由。用于:详情页、编辑页等。
2026-01-27 16:00:33
1015
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅