【发布时间】:2015-01-08 14:07:50
【问题描述】:
各位程序员大家好!
我的整个代码基于以下结构:
function pseudoClass() { var privateVar = 0; return { incrementVar: function() {privateVar += 1;}, getPrivateVar: function() {return privateVar;} }}
var test1 = pseudoClass();
我想在能够操纵它的同时保护“privateVar”。 “pseudoClass”一次只会被实例化一次。我相信“测试”涉及关闭。当我完成“test”后,我可能会稍后创建“test2”以重新开始(privateVar 再次设置为 0)。我对仅仅将“测试”重置为 0 不感兴趣。
现在,问题来了。当不再使用“测试”时,闭包会发生什么?是垃圾收集还是会导致内存泄漏?如果不是,它会在哪种类似的情况下这样做?我希望我的问题足够清楚,我对这些东西很陌生。谢谢!
【问题讨论】:
标签: javascript garbage-collection closures