0

我面临 javascript 和浏览器 (Chrome) 内存利用率的问题。

我的脚本中有计时器(setTimeout),它是从浏览器检查位置。我注意到此选项卡的内存利用率(在任务管理器中)逐渐增加,这导致一段时间后所有选项卡之间的内存最大,最终页面冻结和崩溃。

有什么方法或一些 JS 可以在一段时间后释放内存?

解决方案 :

前 :

function recalculateDistance() {
    getLocation();
    getDistance();
    setTimeout("recalculateDistance()", 10000);
}

后 :

var timer = null;

function recalculateDistance() {
        clearTimeout(timer);
        getLocation();
        getDistance();
        timer = setTimeout("recalculateDistance()", 10000);
}
4

1 回答 1

1

按照建议发布代码。

就像clearTimeout()名字所说的那样,清除超时。这可以帮助你吗?

此外,如果你正在做一个“计时器”,我建议使用setInterval()而不是setTimeout()

于 2012-02-06T10:52:35.630 回答