在这种情况下var foo;
“foo”会指向内存中包含值 undefined
的某处吗?
undefined
在javascript中是否占用内存?
undefined
是否表示没有分配给特定标签的内存地址?
最佳答案
您的问题分为两部分。变量本身和 undefined
值的多个副本。
首先,变量可以占用内存空间。并不总是知道它们是否占用空间,因为编译器可以以一种他们可能不会这样做(甚至直接删除)的方式优化您的代码。
关于您问题的另一部分。根据规范,只有一个 undefined
值,但规范不要求实现在内存中保存 undefined
的唯一表示。因此,只要能够保证语言语义,任何实现都可以保存该值的多个副本。
编辑:另外,规范没有指定它在内存中的值表示,所以这也是一个实现细节。
关于javascript - javascript中 "undefined"是否占用内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68873519/