Javascript 如何更新本地存储中的对象值 我正在创建一个简单的电视节目跟踪器(我在这个时候看到/观看过),当我不后退时,我决定把所有的数据存储在本地存储中。 现在我可以将所有的节目毫无问题地存储在本地存储器中。当我需要更新本地存储中的数据时,会出现此问题(给您一个具体示例-请查看下面的屏幕):

Javascript 如何更新本地存储中的对象值 我正在创建一个简单的电视节目跟踪器(我在这个时候看到/观看过),当我不后退时,我决定把所有的数据存储在本地存储中。 现在我可以将所有的节目毫无问题地存储在本地存储器中。当我需要更新本地存储中的数据时,会出现此问题(给您一个具体示例-请查看下面的屏幕):,javascript,local-storage,Javascript,Local Storage,正如你所看到的,我有这些按钮来调整节目的季数和集数(它们工作得很好)。 但我不知道如何将更新后的值存储在本地存储中。 在下面,您可以找到从本地存储器读取数据并使用它们创建列表的代码: 函数readFromMemory(){ const data=JSON.parse(localStorage.getItem('serial'); data.forEach(元素=>{ 串行内存推送(元素); 让serialInMemory=newserialist(element.pos、element.img、

正如你所看到的,我有这些按钮来调整节目的季数和集数(它们工作得很好)。 但我不知道如何将更新后的值存储在本地存储中。 在下面,您可以找到从本地存储器读取数据并使用它们创建列表的代码:

函数readFromMemory(){ const data=JSON.parse(localStorage.getItem('serial'); data.forEach(元素=>{ 串行内存推送(元素); 让serialInMemory=newserialist(element.pos、element.img、element.name、element.score、element.userscents、element.scents、element.usersessions、element.sessions、element.status、element.id); serialInMemory.inject();//从类创建列表 serialInMemory.episodeUpDown();//为剧集按钮提供功能 serialInMemory.seasonUpDown();//为季节按钮提供功能 }); deleteSerialRow();//从列表和本地存储中删除整行的方法 } 我知道如何使用
Array.prototype.filter
方法筛选出只显示我想要的内容。但我不知道如何只将该行推入
localstorage

我将非常高兴地感谢任何见解


谢谢。

由于您只使用一个键(“序列化”),因此没有其他方法可以对其进行反序列化,相应地修改对象(例如,使用),再次序列化并调用
localStorage.setItem
,使用相同的键和更新和序列化的对象。

老实说,我自己解决了这个问题。 以下是有效的方法:

updateSeasons(id, changeValue){
    const data = JSON.parse(localStorage.getItem('seriale'));
    const filter = data.filter(element => element.id === id);
    filter[0].userSeasons = changeValue;
    for(let i = 0; i< serialeMemory.length; i++){
        if(serialeMemory[i].id === filter[0].id) serialeMemory[i].userSeasons = changeValue;
    }
    localStorage.setItem('seriale', JSON.stringify(serialeMemory));

}
updateSeasons(id,changeValue){
const data=JSON.parse(localStorage.getItem('serial');
const filter=data.filter(element=>element.id==id);
筛选器[0]。userSeasons=changeValue;
for(设i=0;i
我使用了在DOMLoad事件中一直推动的相同数组,它工作得很好。 但是,是的,我可能应该给每一个节目都加上一把钥匙,但我认为我的解决方案很好。无论如何谢谢你