如果变量从未使用过,它会自动从内存中释放吗?

Would a variable automatically get released from memory if it was never used?

出于好奇,如果我要像这样在 JavaScript 中设置一个变量:

var name = "Mango";

然后 从不 引用它会 JavaScript "automatically" 如果发现变量从内存中释放它如果从未被使用过,或者这会被一起忽略并且什么也不会发生吗?

提前致谢。

不会被删除,记住JavaScript永远不会"looks ahead"。
它永远不会跟踪将来会使用什么。
就 JavaScript 所知,您可以打开开发人员的控制台(假设这是针对浏览器的)并注入确实使用 mango.
的代码 一般来说,JavaScript只会删除永远达不到的东西。

例如,如果您要执行:

name = "Hi";

字符串 "Mango" 将被自动删除,因为没有引用它,Source

  • 如果它是 Local variables,它会在超出范围后自动收集垃圾。
  • 如果我们谈论 Global variables,全局变量永远不会被 GC 处理掉,因为全局变量仍然存在。将它设置为 NULL 将允许收集它引用的内存。