摘要:
本文介绍了 ES Modules (ESM) 在浏览器环境中的运行原理,详细阐述了 ESM 的三大加载步骤:构建、实例化、求值,并讨论了其动态加载能力、循环依赖处理方式及与 CommonJS 的区别。 阅读全文
摘要:
这篇笔记记录了循环队列的三种形式,以及它们如何判空、判满、计算元素个数。 阅读全文
摘要:
当数组中存在空位时,遍历数组需要选择合适的方法,不同的方法可能返回不同的结果,有些方法会跳过空位,有些则会返回undefined。 阅读全文
摘要:
这篇文章介绍了XSS跨站脚本攻击的基本含义与简要分类,以及介绍了基本的预防和检测手段。 阅读全文
摘要:
Page Visibility API 可帮助检测用户切换页面,适用于考试或网课系统。本文介绍了 visibilitychange 事件和 document.visibilityState 的状态,并提供了基本的防作弊实现方法,如定期检查页面可见性和监听视频播放状态。 阅读全文
摘要:
本文介绍了 JavaScript 中 ArrayBuffer 和 TypedArray 的应用。ArrayBuffer 用于预分配内存,存储二进制数据,但需通过 DataView 或 TypedArray 视图来读写。TypedArray 是定型数组,用于高效处理特定数据类型。DataView 则提供了更灵活的方式,适合在二进制文件处理、WebSocket 传输、WebGL 图形处理和音频处理等场景中使用。 阅读全文
摘要:
本文介绍了Vue3中的setup函数的运行原理,并介绍了setup与选项式API共存时的处理原则。 阅读全文
摘要:
Vue3 中的 patch 函数结合 diff 算法,通过比较新旧 vnode 序列,优化组件更新流程。diff 算法复用旧节点并最小化移动操作,利用最长递增子序列算法提升渲染性能,可以有效减少创建和销毁节点的开销。 阅读全文
摘要:
本文介绍了发布订阅模式与观察者模式的区别,并使用 TypeScript 实现了发布订阅模式。 阅读全文
摘要:
本文介绍了内存管理的基础知识,重点分析了栈区与堆区的区别,并详细讨论了V8引擎的内存管理机制,包括垃圾回收策略和优化技术。文章通过实例代码展示了堆区和栈区的内存变化,并探讨了v8如何通过并行、增量和并发技术优化垃圾回收性能。 阅读全文