【发布时间】:2019-01-16 01:31:18
【问题描述】:
在下面的代码中
a = 1
b = {"a": a} // this output {"a": 1}
a = 2
console.log(b) // this still output {"a": 1}
在这种情况下,存储1内容的内存在重新赋值给2时会空闲吗?
【问题讨论】:
-
不,因为
1仍然可用,正如您在b中看到的那样。如果它消失了,b对象就会中断。类似问题请见stackoverflow.com/questions/54173974/… -
a是一个原语。它不仅仅是对内存的引用,它是一个double按值。它的值被复制到属性b.a。
标签: javascript node.js variables lifetime