12 2024 档案

摘要:Web Worker 和 WebAssembly (Wasm) 是两种不同的技术,它们在前端性能优化中扮演着不同的角色,并适用于不同类型的使用场景。下面我们将详细比较这两种技术的区别以及它们各自的适用场景。 Web Worker 性能优化特点 并发处理:Web Worker 允许你在后台线程中运行 阅读全文 »
posted @ 2024-12-29 21:09 龙陌 阅读(63) 评论(0) 推荐(1) 编辑
摘要:Service Worker 和 Web Worker 是两种不同类型的 JavaScript 工作者(worker),它们在浏览器环境中提供了不同的功能和使用场景。下面我们将分别介绍这两种工作者的使用场景、最佳实践以及它们之间的主要区别。 Service Worker 使用场景 离线支持:缓存静态 阅读全文 »
posted @ 2024-12-29 16:45 龙陌 阅读(120) 评论(0) 推荐(0) 编辑
摘要:WebAssembly (Wasm) 和 JavaScript (JS) 之间的交互确实有一些限制,但并不完全局限于只能传递 number 类型的数据。实际上,Wasm 和 JS 可以直接交换多种类型的值,并且对于更复杂的数据结构,确实通常需要进行序列化和反序列化。以下是详细的解释: 直接支持的数据 阅读全文 »
posted @ 2024-12-29 15:25 龙陌 阅读(64) 评论(0) 推荐(0) 编辑
摘要:hash-wasm 库提供了两种不同的 API 来使用 MD5 哈希算法:wasmMD5 和 createMD5。这两种 API 在使用场景上有显著的区别,主要体现在它们的使用方式、灵活性以及适用的场合。 wasmMD5 函数 同步调用:wasmMD5 是一个同步函数,可以直接传入数据并立即返回哈希 阅读全文 »
posted @ 2024-12-29 00:17 龙陌 阅读(23) 评论(0) 推荐(0) 编辑
摘要:处理大量文件时遇到 RangeError: WebAssembly.instantiate(): Out of memory 错误,通常是因为一次性创建了过多的 WebAssembly 实例,导致内存不足。每个 createMD5() 调用都会创建一个新的 WebAssembly 实例,这对于大量的 阅读全文 »
posted @ 2024-12-28 18:57 龙陌 阅读(42) 评论(0) 推荐(0) 编辑
摘要:webkitRelativePath 是一个在 HTML5 的 File API 中使用的非标准属性,它由 WebKit 和 Blink 引擎(如 Chrome 和 Safari 浏览器)支持。这个属性提供了一个相对于用户选择文件夹的路径,当用户通过 <input type="file" webki 阅读全文 »
posted @ 2024-12-28 16:01 龙陌 阅读(60) 评论(0) 推荐(0) 编辑
摘要:AssemblyScript 是一种 TypeScript 的严格子集,旨在编译为 WebAssembly (Wasm),从而在浏览器和服务器环境中提供接近原生代码的执行速度。它与原生的 TypeScript (TS) 和 JavaScript (JS) 相比具有一些独特的优势,尤其是在性能和内存管 阅读全文 »
posted @ 2024-12-26 10:57 龙陌 阅读(94) 评论(0) 推荐(0) 编辑
摘要:JavaScript 的可选链(optional chaining)语法是在 ECMAScript 2020 (ES11) 中引入的,它允许你安全地访问嵌套对象属性,即使某个中间属性不存在也不会抛出错误。然而,在 Node.js 环境中,不同版本对新特性的支持情况有所不同。 Node.js 对 ES 阅读全文 »
posted @ 2024-12-25 15:45 龙陌 阅读(82) 评论(0) 推荐(0) 编辑
摘要:在 JavaScript 中,通过对象属性访问值(例如 obj.property)与调用函数返回一个值(例如 function getValue() { return value; } 或者箭头函数 const getValue = () => value;)这两种方式的性能差异通常是非常微小的,在 阅读全文 »
posted @ 2024-12-25 11:23 龙陌 阅读(55) 评论(0) 推荐(0) 编辑
摘要:在 Vue.js 应用中,将全局方法或常量挂载到 window 对象上是一种实现全局访问的方式,但这种方法并不是最佳实践。虽然它确实可以让任何地方都能访问这些方法或常量,但也带来了潜在的风险和问题: 挂载到 window 的优点 简单直接:可以直接通过 window.methodName 或 win 阅读全文 »
posted @ 2024-12-24 13:49 龙陌 阅读(111) 评论(0) 推荐(0) 编辑
摘要:@rushstack/eslint-patch 是一个由 Microsoft 的 Rush Stack 团队开发的工具,主要用于修补 ESLint 在某些特定场景下的行为,特别是在使用 TypeScript 和其他语言特性时。它的主要作用是解决 ESLint 与一些现代 JavaScript/Typ 阅读全文 »
posted @ 2024-12-22 20:12 龙陌 阅读(118) 评论(0) 推荐(0) 编辑
摘要:在 tanStack Query(以前称为 React Query)中,isPending 和 isFetching 都是用来描述查询状态的布尔值属性,但它们表示的是不同阶段和情况下的加载状态。理解两者的区别有助于更好地管理应用中的加载指示器和用户界面反馈。 isFetching 定义:isFetc 阅读全文 »
posted @ 2024-12-22 15:48 龙陌 阅读(22) 评论(0) 推荐(0) 编辑
摘要:零宽字符(Zero-width characters)是 Unicode 标准中定义的一类特殊字符,它们在文本中不占据任何可视空间。尽管这些字符不可见,但它们具有特定的功能和应用场景。以下是零宽字符的一些常见应用场景: 1. 文本格式化 零宽非连接符(ZWNBSP, U+FEFF):通常用作字节顺序 阅读全文 »
posted @ 2024-12-21 14:57 龙陌 阅读(64) 评论(0) 推荐(0) 编辑
摘要:scrollIntoView 是一个 JavaScript 方法,用于将元素滚动到浏览器窗口的可见区域内。而通过 URL 中的片段标识符(即 # 后面的部分)来实现滚动到页面中的特定位置,则是浏览器内置的行为。这两种方式在实现滚动到可视区域方面有一些关键区别: 1. 行为差异 scrollIntoV 阅读全文 »
posted @ 2024-12-21 12:18 龙陌 阅读(29) 评论(0) 推荐(0) 编辑
摘要:offsetTop 是一个只读属性,它返回元素的顶部相对于其包含块(通常是最近的已定位祖先元素)的偏移量。当在一个页面中频繁或大量使用 offsetTop 来获取元素的位置时,可能会影响性能,主要原因如下: 1. 强制同步布局 (Layout Thrashing) 每当访问 offsetTop 或其 阅读全文 »
posted @ 2024-12-20 23:37 龙陌 阅读(27) 评论(0) 推荐(0) 编辑
摘要:Playwright 的端到端测试(End-to-End Testing,简称 E2E 测试)是一种软件测试方法,旨在模拟真实用户在应用程序中的交互行为,从头到尾验证整个应用的工作流程。这种测试确保了应用的所有组件(前端、后端、数据库等)协同工作,并且用户体验符合预期。 端到端测试的特点 全面覆盖: 阅读全文 »
posted @ 2024-12-09 15:10 龙陌 阅读(148) 评论(0) 推荐(0) 编辑
摘要:在URL路径中,推荐使用连字符(-)而不是下划线(_)。以下是几个原因: SEO友好性:搜索引擎更倾向于将连字符解释为单词分隔符,而下划线可能会被忽略或被视为单词的一部分。使用连字符有助于搜索引擎更好地理解URL中的关键词。 用户体验:连字符在URL中看起来更加自然,容易阅读。例如,example. 阅读全文 »
posted @ 2024-12-09 10:01 龙陌 阅读(83) 评论(0) 推荐(0) 编辑
摘要:暗水印(也称为数字水印或隐形水印)是一种信息隐藏技术,它将特定的数据嵌入到多媒体内容(如图像、音频、视频文件)中,而不会明显改变这些内容的外观或质量。这种嵌入的信息通常是不可见的,只有通过特定的算法才能检测和提取出来。暗水印的主要用途包括版权保护、内容认证、跟踪非法复制以及确保数据完整性等。 暗水印 阅读全文 »
posted @ 2024-12-02 16:04 龙陌 阅读(173) 评论(0) 推荐(0) 编辑
摘要:在软件开发中,Staging environment(预生产环境)是一个重要的环节,主要用于在软件正式上线前进行最终的测试和验证。以下是 Staging environment 的主要作用: 1. 模拟生产环境 环境一致性:Staging environment 尽可能地模拟生产环境,包括硬件配置、 阅读全文 »
posted @ 2024-12-02 09:20 龙陌 阅读(61) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示