【问题标题】:How to add more into LocalStorage instead of overwriting it?如何向 LocalStorage 添加更多内容而不是覆盖它?
【发布时间】:2017-01-23 22:29:25
【问题描述】:

我正在创建一个博客,我想在本地存储中存储更多内容,而不仅仅是一个。我该怎么做?

function saveToLocalStorage(){
    var title = document.getElementById("title1");
    var titlesaved=title.innerHTML;
    var para = document.getElementById("p1");
    var parasaved = para.innerHTML;

    localStorage.setItem("Title",titlesaved);
    localStorage.setItem("Paragraph",parasaved);    
}

function RetrieveData(){
    document.getElementById("title2").innerHTML = localStorage.getItem("Title");
    document.getElementById("paragraph2").innerHTML = localStorage.getItem("Paragraph");
}

【问题讨论】:

  • 使用不同的密钥存储它。如果您想使用相同的键进行存储,请使用每个键存储一个值列表。
  • 使用不同的密钥存储是什么意思?
  • 您正在使用“标题”和“段落”键来存储数据。您可以只使用不同的字符串作为键。不过,我可能会选择 Justinas 的解决方案。

标签: javascript arrays local-storage


【解决方案1】:

将您的数据存储为 JSON:

var data = [{Title: '', Paragraph: ''}];
localStorage.setItem("items", JSON.stringify(data));

当您需要更新/添加信息时,只需获取该 JSON,对其进行解析、编辑并放回:

var data = JSON.parse(localStorage.getItem("items"));
data.push({Title: 'a', Paragraph: ''});
localStorage.setItem("items", JSON.stringify(data));

【讨论】:

  • 那么我是保留以前的代码还是将整个代码更改为那个?
猜你喜欢
  • 1970-01-01
  • 2021-06-30
  • 2018-12-13
  • 1970-01-01
  • 1970-01-01
  • 2021-09-18
  • 1970-01-01
  • 2017-09-08
  • 1970-01-01
相关资源
最近更新 更多