Я использую локальное хранилище, потому что после щелчка страница перезагружается, поэтому я могу отслеживать последний щелчок.
Как вы можете видеть, я попытался очистить localStorage, чтобы уменьшить используемую память, но она уже на 1.000.000K менее чем за 10 минут использования.
Этот сценарий обновляет эти переменные в разных местах каждый раз, когда моя страница перезагружается?
Что происходит с тем, что он использует эту память?
Это мой весь код.
Это расширение, которое я создаю для хром, оно выбирает вариант и нажимает кнопку, кнопка отправляет форму, перезагружает страницу, и она снова и снова появляется.Простая функция с использованием большого объема памяти
var last = localStorage.getItem('last');
var current = getNext(last);
var prox = getNext(current);
localStorage.clear();
$('select[name="myselect"] option').each(function(){
if($(this).val().indexOf(current)>-1){
$(this).prop('selected', true);
$('.abc').first().click();
localStorage.setItem('last',current);
}
});
function getNext(current){
var arrIds = ['227','228','229','230','231','232'];
return arrIds[arrIds.indexOf(current)+1] || '227';
}
Обновленный код, без деклараций вар, что уменьшилось потребление памяти резко, но со временем, память поднимает (через десять минут вышел из 160.000K в 240.000K):
$('select[name="myselect"] option').each(function(){
if($(this).val().indexOf(getNext(localStorage.getItem('last')))>-1){
$(this).prop('selected', true);
$('.abc').first().click();
localStorage.setItem('last',getNext(localStorage.getItem('last')));
}
});
function getNext(current){
var arrIds = ['227','228','229','230','231','232'];
return arrIds[arrIds.indexOf(current)+1] || '227';
}
Это не выглядит так, как если бы этот код мог нести ответственность за потребление памяти. – Pointy
Когда вы говорите «перезагрузка страницы», действительно ли она перезагружается, или вы как-то обновляете ее содержимое? Если вы удалите код выше, устранит ли он утечку? – 2014-09-27 14:00:04
Pointy, это все мой код. Squint, страница действительно перезагружается полностью, когда клик выполняется, я постараюсь не использовать vars. – BernardoLima