Javascript内存对null和undefined的影响

时间:2018-06-14 10:07:39

标签: javascript memory memory-management null undefined

我在内存利用率对我们非常重要的区域工作,因为我们不在您的经典Web浏览器/硬件上运行。

我们在我们的应用程序中使用null非常多,我不清楚的一件事是null是否占用更多空间而不是将变量赋值给undefined。

我们是否知道其中一个或另一个在内存使用方面成本更高?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

正如你在this jsperf test中看到的那样,在chrome(V8,就像nodejs)中,null似乎稍微快一些,这可能表明它的性能略高一些。

由于undefined是一个比null更长的字符串,因此在解析时使用undefined而不是null时,JIT编译器必须为内存节省4个字节。考虑一下记忆。

垃圾收集doesn't care about the value being either null or undefined。 差异应该是最小的。您应该考虑使用null而不是undefined types的后果。为了性能而强制使用任何一种都可能弊大于利。