Javascript 磁盘上的JSON文件在加载到内存中的var时是否占用相同的空间?

Javascript 磁盘上的JSON文件在加载到内存中的var时是否占用相同的空间?,javascript,node.js,Javascript,Node.js,我将一些JSON文件存储在磁盘上(每个都非常小,大约4kB),并在需要时将它们加载到var中。 我可能有数千个这样的文件,如果它们在内存中占用的空间与在磁盘上占用的空间相同,我宁愿在应用程序启动时将它们全部加载到内存中 当我从文件创建对象时,如何计算文件占用的内存(RAM) 编辑:我知道如何将JSON文件保存到磁盘。这不是我的问题。我试图了解当我将JSON文件加载到变量中时,它将占用多少内存(RAM)。如果我知道磁盘上JSON文件的大小,那么当我从node.js或web浏览器中的文件创建java

我将一些JSON文件存储在磁盘上(每个都非常小,大约4kB),并在需要时将它们加载到var中。 我可能有数千个这样的文件,如果它们在内存中占用的空间与在磁盘上占用的空间相同,我宁愿在应用程序启动时将它们全部加载到内存中

当我从文件创建对象时,如何计算文件占用的内存(RAM)

编辑:我知道如何将JSON文件保存到磁盘。这不是我的问题。我试图了解当我将JSON文件加载到变量中时,它将占用多少内存(RAM)。如果我知道磁盘上JSON文件的大小,那么当我从node.js或web浏览器中的文件创建javascript对象时,如何计算它将占用多少内存(RAM)?

这些文件保存为“纯文本文件”。 例如:


对象占用的RAM量与文件大小不同。文件的大小只是其中的字节数,但对象占用的RAM量取决于其中存储的值。例如,在这样的对象中:

{
    "bar": 1
}
保存到文件时,
1
仅为一个字节。但是,如果要将此对象加载到
var
1
将占用8个字节,因为它是一个
数字

请查看每个数据类型大小的答案:


另外,您应该考虑键的大小(但这很简单,如果键是字符串,那么它是
length
属性的两倍)。

我会尝试测量您使用的JavaScript执行环境中的内存消耗。 例如,对于chrome浏览器,您可以使用此选项

您提到的数据文件表明您的代码在服务器上运行,可能是node.js。
我想看一看。

请看一看与我的问题无关的内容。我知道如何在磁盘上存储数据。我试图理解,一个给定的JSON文件将在内存中占用多少内存,以及如何测量它。根据您链接到的问题中的代码,这可能是So的重复,我的4KB JSON文件似乎变成了一个3748字节的对象。奇怪的巧合。谢谢你的解释。但是你能解释一下你把钥匙的大小考虑进去是什么意思吗?你的意思是我应该这样做,因为其他代码示例没有?是的,我没有看到任何其他示例考虑到键的大小,即使键占用RAM。
{
    "bar": 1
}