垃圾收集的频率是多少?

时间:2015-05-17 13:09:56

标签: javascript browser garbage-collection

如果我理解正确,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.在控制台中,它输出主要对象的大小。

1 个答案:

答案 0 :(得分:0)

请参阅此link,您的问题不在垃圾收集器中,我认为您的代码中存在一些变量,这些变量是在内存中创建并且从未发布的,请查看js最佳实践的链接< / p>

[1] JavaScript Best Practices

[2] OOP in JS