如果我理解正确,GC的工作原理如下:
MyClass.prototype.render = function(){
var largeArray = [];
for (var i = 0; i < 1000; i++) {
largeArray.push({
firstName: 'John',
lastName: 'Smith'
});
}
}
调用render()
时,largeArray
被标记为垃圾回收但未立即收集。
我很好奇,因为我的手机有一个锁屏小部件。它是一个在锁屏上显示HTML页面的浏览器。它的工作原理是每次我加载锁屏时都会重新加载小部件。
问题是,每次〜第5次我打开锁屏时手机会重新启动到安全模式。当我解锁手机时,小部件浏览器似乎已关闭,然后才能运行垃圾收集。听起来不错吗?
Here's my widget.在控制台中,它输出主要对象的大小。