javascript 垃圾回收机制
我们来系统且深入地探讨一下 JavaScript 的垃圾回收(Garbage Collection, GC)机制,并结合实际案例,说明如何利用这些知识来优化代码性能。 核心思想:为何需要垃圾回收? 从第一性原理出发,程序运行的本质是处理数…
载入中...
共 205 篇文章
我们来系统且深入地探讨一下 JavaScript 的垃圾回收(Garbage Collection, GC)机制,并结合实际案例,说明如何利用这些知识来优化代码性能。 核心思想:为何需要垃圾回收? 从第一性原理出发,程序运行的本质是处理数…
好的,关于 Web 前端常见的图片懒加载(Lazy Loading)实现方式,可以从“原生支持”和“手动实现”两个大的维度来理解。我会为你梳理几种主流的方法,并分析各自的优缺点,最后给出一个当前最佳实践的建议。 主流的图片懒加载方式 图片…
我们来系统且深入地探讨一下JavaScript大文件上传的处理方案。我会从问题的本质出发,详细讲解核心原理、实现步骤、关键代码,并分析各种方案的优劣,最后给出我的建议。 三、分片上传的详细实现步骤 下面我们来分解整个流程,包括前端和后端的…
难度:中等 题目描述 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 异位词 指由相同字母重排列而成的字符串(包括相同的字符串)。 提示:3 1 <= s.leng…
在H5移动端开发中实现0.5px的细线是一个非常经典的问题。这背后的根本原因在于设备的物理像素和CSS的逻辑像素之间的关系,也就是设备像素比(Device Pixel Ratio, DPR)。 例如,在DPR为2的Retina屏幕上,1个C…
LeetCode Hot 100 确实是面试中出现频率最高的题目,它们覆盖了解决算法问题最核心、最经典的思想。虽然题目看似千变万化,但其背后考察的算法和数据结构模式是高度集中的。 与其将这100道题看作是独立的个体,不如将它们视为对几个核心…
这是一个非常核心且重要的问题。要彻底讲明白 JavaScript 中 Object {} 和 Map 的区别,我们需要从它们的设计哲学、内部机制和实际应用场景三个层面进行深入剖析。 这不仅仅是“Map 的键可以是任意类型”这么简单。 二、…
对于初始渲染数据的获取,放在哪个生命周期是一个非常核心且重要的问题。答案根据你使用的组件类型(函数组件或类组件)而有所不同。 总的来说,最佳实践是放在组件“挂载完成”的那个时间点。 传统选择:类组件中的 componentDidMount…
我们来彻底讲明白 JavaScript 中的 addEventListener。 这不仅仅是一个方法,它是现代 Web 交互的基石。理解它,意味着你理解了浏览器如何响应用户行为。 我们将从它是什么、为什么需要它,到它的每一个参数、底层的事件…
我们来系统且深入地剖析 <script 标签,从 defer 属性开始,并延展到所有相关的属性。 这不仅仅是关于“功能是什么”,更是关于“为什么需要它”以及“在何种场景下做出最优选择”。 defer 的核心作用:延迟且有序的执行 defe…
我们来彻底讲明白 requestAnimationFrame 通常简称为 rAF。 要真正理解它,我们不能只看它是什么,更要明白它为什么会出现,它解决了什么根本性的问题。 一、requestAnimationFrame 的诞生背景:旧时代…
我们来系统地梳理一下 JavaScript 中字符串(String)和数组(Array)的这些常用基础函数。 理解这两者差异的关键在于一个核心概念:字符串是不可变的(Immutable),而数组是可变的(Mutable)。记住这一点,很多函…