如何从索引和键更新本地存储对象的值

时间:2019-03-03 07:23:56

标签: javascript arrays object local-storage

我的项目需要此解决方案。对我来说非常重要 我想从本地存储使用键和索引更新对象值 对于 我的购物车申请。

(减少购物车中产品数量的按钮)

示例。

function decreaseQuantity(index) {
  var oldQty = localStorage.cart[index].quantity;
  var newQty = oldQty - 1;
  localStorage.setItem(cart[index].quantity, newQty);
}

2 个答案:

答案 0 :(得分:4)

您不能在localStorage中存储复杂的对象,只能将数据存储为string

如果要将购物车对象存储到locaStorage,则需要使用JSON.stringify将其序列化为字符串,然后像下面那样存储。

window.localStorage.setItem('cart', JSON.stringify(cart));

注意:这里的“购物车”是关键。

要取回,更改并重新存储,您需要执行以下操作。

 var data = window.localStorage.getItem('cart');
        if (data != null) {
            let cart= JSON.parse(data);
              cart[index].quantity = cart[index].quantity -1;
             window.localStorage.setItem('cart', JSON.stringify(cart));

        } 

答案 1 :(得分:0)

它为我工作@PSK感谢您的努力 @adiga我猜我犯了一个逻辑错误。也谢谢您的关注!