You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从内存占用角度对比Node.js数组与对象的实验分享

数组与对象内存占用对比实验(Windows 10 + Node.js v6.11.0)

最近我在Windows 10系统上,基于Node.js v6.11.0版本做了个简单的对比实验,目标很明确:看看不同数据组织方式下,数组和对象的内存占用情况有啥差异。

实验里写了四个函数,它们都会生成相同大小的随机数集合,但存储这些数据的方式完全不同:

  • reference函数:先创建一个固定大小的数组,然后直接往里面填充随机数字——相当于提前给解释器明确了数组的最终长度。
  • twoArrays函数:用push方法分别填充两个数组,这种情况下解释器没法提前预知数组的最终大小,只能动态扩容。
  • matrix函数:把随机数组织成二维数组(矩阵)的形式,也就是用嵌套数组来存储数据。
  • objects函数:通过push方法构建一个数组,不过数组里的每个元素都是包含随机数的对象,相当于把数据封装成一个个对象再存入数组。

通过对比这四种实现的内存消耗,就能直观看到不同数据结构在内存利用上的差异啦。

内容的提问来源于stack exchange,提问作者vasaki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:57:01