null 与 undefined 的 Javascript 内存影响

标签 javascript memory memory-management null undefined

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

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

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

感谢您的帮助!

最佳答案

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

由于 undefined 是一个比 null 更长的字符串,JIT 编译器在解析时使用 undefined 而不是 null 时必须多向内存保存 4 个字节。还要考虑内存。

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

关于null 与 undefined 的 Javascript 内存影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50854916/

相关文章:

javascript - 如何以毫秒为单位测量页面上的 mousemove?

c - 如何使用 C 释放二叉树?

memory-management - ehcache 是否保留(分配)使用 maxBytesLocalHeap 设置的堆内存?

c - 为什么这个程序不创建核心转储?

Javascript 将输入插入数组会导致多个数组而不是一个

javascript - 显示/隐藏切换不适用于数据库输出的选择名称

javascript - 追加时访问父数据

python - "Why"python数据类型是不可变的

javascript - Node-Webkit 应用程序 : Loading thousands of images from disk

arrays - MIPS:将用户输入字符串与内存中的字符串数组进行比较