删除localStorage中的字符串

时间:2016-06-25 23:33:47

标签: javascript local-storage

我正在使用本地存储来显示事物列表,我只是追加到localStorage项目的末尾。我如何从localStorage中删除某个字符串?它们都属于具有唯一id的fib类,如果我可以从div之间删除HTML,但我不知道如何在localStorage项目中实际执行它,它也可以工作...

2 个答案:

答案 0 :(得分:2)

由于它实际上是HTML,只需使用createDocumentFragment将其返回

var yourHTML = getItFromLocalStorage();

var fragment = document.createDocumentFragment();
fragment.appendChild(document.createElement('div'));
fragment.firstChild.innerHTML = yourHTML;
var yourElement = fragment.getElementById('your_id');
yourElement.parentNode.removeChild(yourElement);
// fragment.firstChild now contains your HTML *without* the
// element with your_id

答案 1 :(得分:-1)

您可以使用字符串列表并将其保存在localStorage中,但首先需要对其进行字符串化并在检索时将其解析回来。您可以创建辅助函数来保存代码/时间。

function setItem(key, obj){
   localStorage.setItem(key, JSON.stringify(obj));
}

function getItem(key){
   return JSON.parse(localStorage.getItem(key));
}

var data = [];
data.push('a');  // ['a']

setItem('data', data);

data = getItem('data'); // ['a']

data.push('b');  // ['a', 'b']

setItem('data', data);

data = getItem('data'); // ['a', 'b']

data.splice(data.indexOf('a'), 1); // ['b']

setItem('data', data);

data = getItem('data'); // ['b']


console.log(data); // ['b']