数组将元素存储在连续的内存块中 – 每个元素都紧邻前一个元素。
随机访问的复杂度为 O(1),因为 arr[i] 的地址只是 baseAddress + i * elementSize — 单个算术运算。
在任意位置插入/删除的时间复杂度为 O(n),因为必须移动元素才能保持连续性。
JavaScript 数组实际上是稀疏数组底层的哈希映射,但 V8 优化了密集数组以使用连续的后备存储。
为什么重要:理解内存模型解释了为什么数组操作比记住表格更复杂。
为了读取 arr[i],CPU 计算 baseAddress + i * sizeof(element) 并直接跳转到那里——无需遍历。
来源:Dev.to


