У меня есть корзина для покупок, использующая sessionstorage для хранения предметов. Когда пользователь нажимает «добавить в корзину», он сохраняет новый объект с ключом, равным клику, и значением, равным имени элемента. Затем я использую этот цикл для считывания значений:Как улучшить эту систему присвоения имен sessionStorage/for loop?
for (var i = 0; i < sessionStorage.length -1; i++) {
if(sessionStorage.getItem(i + 1) != null) {
...
"<span class='item'>" + sessionStorage.getItem(i + 1) + "</span>" +
В этом проблема. Скажем, я удаляю элемент 3 из 5 из моей корзины. Если я добавлю еще один элемент, он будет называться «6», но мои предметы будут 1, 2, 4, 5, 6. Мой цикл будет распознавать только пункты 1, 2, 4 и 5. Как узнать элемент 6 ? Я сделал быстрое исправление, проверив мой цикл до 50, но это просто кажется неаккуратным и болотом ресурсов ...
Это может быть полезно вам: http://stackoverflow.com/questions/3357553/how-to-store-an-array-in-localstorage –
@EvanTrimboli Спасибо, это полезно, но, к сожалению, это может потребоваться некоторое время, чтобы преобразовать мой путь к методу с JSON, и у меня заканчивается время. Возможно, в следующий раз я сделаю такое решение. –