会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
我是格鲁特
博客园
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
8
9
···
21
下一页
2025年2月11日
重绘和回流
摘要: 一、什么是重绘与回流 重绘(Repaint) 重绘是指当元素的外观发生变化时,浏览器需要重新绘制这些元素。由于这些操作不会改变元素占据的空间,因此不需要进行回流。常见的重绘操作包括: 改变颜色、背景色、透明度 回流(Reflow)回流(也称为布局重排)是指当元素的尺寸、位置或其他影响其布局的属性发生
阅读全文
posted @ 2025-02-11 10:04 我是格鲁特
阅读(283)
评论(0)
推荐(0)
2025年2月8日
lru缓存算法
摘要: LRU 缓存算法基于一个基本假设:如果一个数据长时间没有被访问,那么它未来也很可能不会再被访问。因此,当缓存达到上限时,应该淘汰掉最久未被访问的数据。 过期时间:缓存项有一个时间戳(timestamp),每次访问时都会重新设置一个新的过期时间 maxAge,如果缓存项超过 maxAge 设定的过期时
阅读全文
posted @ 2025-02-08 09:53 我是格鲁特
阅读(110)
评论(0)
推荐(0)
2025年2月7日
websocket封装
摘要: WebSocket 是一种基于 TCP 的通信协议,允许客户端与服务器之间建立一个持久的连接,进行双向实时通信。 1. WebSocket 构造函数 通过 new WebSocket(url) 创建 WebSocket 实例。 const ws = new WebSocket('ws://your-
阅读全文
posted @ 2025-02-07 17:00 我是格鲁特
阅读(286)
评论(0)
推荐(0)
2025年1月7日
git pull和fetch
摘要: 在 Git 中,拉取代码的常用方式有两种模式:git pull 和 git fetch。它们的主要区别在于拉取的行为以及是否会自动合并。 1. git pull 模式 git pull 是 拉取代码并自动合并 的操作,等价于以下两步操作的组合: git fetch git merge 特点 将远程分
阅读全文
posted @ 2025-01-07 10:44 我是格鲁特
阅读(836)
评论(0)
推荐(0)
git rebase 的作用
摘要: 一、作用: 清理提交历史:当在开发过程中频繁提交(如修复小的编译错误或调试输出),并希望将这些提交合并为一个更有意义的提交时,可以使用Git Rebase。 在共享分支上保持历史线性:在团队协作中,如果你正在一个需要保持清晰线性历史的分支(如master或main分支)上工作,Git Reba
阅读全文
posted @ 2025-01-07 10:37 我是格鲁特
阅读(234)
评论(0)
推荐(0)
webpack插件开发备注
摘要: 在 Webpack 插件开发中,apply 方法是插件的核心入口。每个 Webpack 插件都是一个包含 apply 方法的对象,Webpack 在运行时会调用这个方法,将 Webpack 的编译器(compiler)对象作为参数传递给它,从而允许插件挂载到 Webpack 的事件系统中,并通过钩子
阅读全文
posted @ 2025-01-07 10:20 我是格鲁特
阅读(24)
评论(0)
推荐(0)
2024年12月9日
前端日志监控系统备忘
摘要: 一、前端错误的捕获 在 JavaScript 日志系统中,捕获错误的范围应该全面,涵盖前端应用中可能出现的各类问题,包括语法错误、运行时错误、资源加载错误以及用户行为异常等。以下是不同类型错误的捕获方法: window.onerror: 可捕获常规错误(变量未定义、函数调用错误等)、计时器等错误,但
阅读全文
posted @ 2024-12-09 18:27 我是格鲁特
阅读(137)
评论(0)
推荐(0)
2024年12月5日
symbol数据类型的用途
摘要: ES6 的 Symbol 是一种独特的原始数据类型,用于生成唯一的标识符。它的主要特点是每次创建的 Symbol 值都是唯一的,即使描述相同,也不会相等。 1.定义对象的唯一属性键,防止命名冲突 在对象中定义键值时,通常使用字符串作为键,但这可能导致命名冲突。而使用 Symbol 作为键可以确保属性
阅读全文
posted @ 2024-12-05 19:48 我是格鲁特
阅读(45)
评论(0)
推荐(0)
大的音视屏文件播放思路
摘要: 在前端播放一个大小为 10GB 的视频时,直接下载整个视频文件然后播放显然是不切实际的,因为这样会导致极大的延迟和带宽消耗。为了尽快开始播放大文件,可以采用以下几种技术来优化视频播放体验。 1.视频流式传输 (Streaming) 流式传输允许前端在不下载完整文件的情况下,就能开始播放视频。具体的方
阅读全文
posted @ 2024-12-05 16:16 我是格鲁特
阅读(321)
评论(0)
推荐(0)
2024年12月4日
js抽奖算法
摘要: 核心思路: 设定概率: 奖项1概率:5% 即 [0 - 0.05) 的范围 奖项2率:10%. 即 [0.05 - 0.1) 的范围。注:为什么是从0.05开始?因为<0.05的话就是中了上一个奖 不中奖. 即 [0.05 - 1) 的范围 要提高中奖难度,可以通过 缩小中奖概率区间 来减少中奖的机
阅读全文
posted @ 2024-12-04 20:46 我是格鲁特
阅读(262)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
9
···
21
下一页
公告