【发布时间】:2018-09-07 13:49:50
【问题描述】:
我正在创建一个订购系统,用户将选择一个项目并将其添加到购物车。我使用本地存储来保存选定的项目并在下一页获取这些项目。
如果用户选择了相同的项目,我现在想做的是更新存储的数据。
例如 我已经收藏了
[{
"id": "1",
"name": "soap A",
"quantity": "10",
"price" : "50.00"
},
{
"id": "2",
"name": "soap X",
"quantity": "10",
"price" : "50.00"
}]
用户再次选择了id 的1(即"soap A")且数量为"15" 的项目,我当前的结果如下所示
[{
"id": "1",
"name": "soap A",
"quantity": "10",
"price" : "50.00"
},
{
"id": "2",
"name": "soap X",
"quantity": "10",
"price" : "50.00"
},
{
"id": "1",
"name": "soap A",
"quantity": "15",
"price" : "50.00"
}]
我想要做的是更新我的本地存储中是否存在具有相同 ID 的对象。它看起来像这样
[{
"id": "1",
"name": "soap A",
"quantity": "25",
"price" : "50.00"
},
{
"id": "2",
"name": "soap X",
"quantity": "10",
"price" : "50.00"
}]
这是我用于插入本地存储的脚本。
var oldItems = JSON.parse(localStorage.getItem('itemsArray')) || [];
var newItem = {
'id' : $('#itemId').val(),
'name': $('#productName').val(),
'quantity': $('#quantity').val(),
'price': $('#productPrice').val(),
};
oldItems.push(newItem);
localStorage.setItem('itemsArray', JSON.stringify(oldItems));
【问题讨论】:
标签: javascript jquery json local-storage