从本地存储中获取项目
get the items from local storage
我试图将一些值插入到本地存储中。 O 需要获取详细信息。但是我无法按要求获取数据
console.log("saving data to local storage")
var newItem = {
title: $('#title').val(),
description: $('#description').val()
}
if (localStorage.getItem("newData") === null) {
localStorage.setItem("newData", JSON.stringify(newItem));
}
else {
var oldItems = JSON.parse(localStorage.getItem('newData')) || [];
oldItems.push(newItem);
localStorage.setItem('newData', JSON.stringify(oldItems));
}
这里我保存了我的本地存储数据,然后我需要获取每个细节
这是我本地存储保存的数据
[{"title":"e2","description":"e2"},{"title":"a2","description":"a2"},{"title":"r2","description":"r2"},{"title":"y2","description":"y2"}]
我需要获取每个数据,我试过这种方法。但没有得到详细信息
var newArr = window.localStorage.getItem('newData');
for (var i = 0, len = newArr.length; i < len; i++) {
savedPerson = JSON.parse(newArr[i]);
console.log(savedPerson)
console.log(savedPerson.title)
console.log(savedPerson.description)
}
我该怎么做
这将使您对应该如何检索 JSON 数据有一个基本的了解:
// READ STRING FROM LOCAL STORAGE
var retrievedObject = localStorage.getItem('newData');
// CONVERT STRING TO REGULAR JS OBJECT
var parsedObject = JSON.parse(retrievedObject);
// ACCESS DATA
for (var i = 0, len = parsedObject.length; i < len; i++) {
savedPerson = parsedObject[i]
console.log(savedPerson)
console.log(savedPerson.title)
console.log(savedPerson.description)
}
你的代码后半部分是错误的。请检查此代码。
console.log("getting data from local storage");
var newArr = JSON.parse(window.localStorage.getItem('newData'));
for (var i = 0; i < newArr.length; i++) {
var savedPerson = newArr[i];
console.log(savedPerson);
console.log(savedPerson.title)
console.log(savedPerson.description)
}
您将 newItem 设置为一个对象,并调用 localStorage.setItem("newData", JSON.stringify(newItem));
保存它。
然后var oldItems = JSON.parse(localStorage.getItem('newData'))
会return一个字符串,但是一个字符串没有push方法
您可能要做的是创建一个数组,然后将对象添加到其中。然后你可以迭代对象数组。
举个例子
var newItem = {
title: $('#title').val(),
description: $('#description').val()
}
if (localStorage.getItem("newData") === null) {
localStorage.setItem("newData", JSON.stringify([newItem]));
} else {
var oldItems = JSON.parse(localStorage.getItem('newData'));
oldItems.push(newItem);
localStorage.setItem('newData', JSON.stringify(oldItems));
}
var newArr = JSON.parse(window.localStorage.getItem('newData'));
for (var i = 0, len = newArr.length; i < len; i++) {
var savedPerson = newArr[i];
console.log(savedPerson)
console.log(savedPerson.title)
console.log(savedPerson.description)
}
我试图将一些值插入到本地存储中。 O 需要获取详细信息。但是我无法按要求获取数据
console.log("saving data to local storage")
var newItem = {
title: $('#title').val(),
description: $('#description').val()
}
if (localStorage.getItem("newData") === null) {
localStorage.setItem("newData", JSON.stringify(newItem));
}
else {
var oldItems = JSON.parse(localStorage.getItem('newData')) || [];
oldItems.push(newItem);
localStorage.setItem('newData', JSON.stringify(oldItems));
}
这里我保存了我的本地存储数据,然后我需要获取每个细节
这是我本地存储保存的数据
[{"title":"e2","description":"e2"},{"title":"a2","description":"a2"},{"title":"r2","description":"r2"},{"title":"y2","description":"y2"}]
我需要获取每个数据,我试过这种方法。但没有得到详细信息
var newArr = window.localStorage.getItem('newData');
for (var i = 0, len = newArr.length; i < len; i++) {
savedPerson = JSON.parse(newArr[i]);
console.log(savedPerson)
console.log(savedPerson.title)
console.log(savedPerson.description)
}
我该怎么做
这将使您对应该如何检索 JSON 数据有一个基本的了解:
// READ STRING FROM LOCAL STORAGE
var retrievedObject = localStorage.getItem('newData');
// CONVERT STRING TO REGULAR JS OBJECT
var parsedObject = JSON.parse(retrievedObject);
// ACCESS DATA
for (var i = 0, len = parsedObject.length; i < len; i++) {
savedPerson = parsedObject[i]
console.log(savedPerson)
console.log(savedPerson.title)
console.log(savedPerson.description)
}
你的代码后半部分是错误的。请检查此代码。
console.log("getting data from local storage");
var newArr = JSON.parse(window.localStorage.getItem('newData'));
for (var i = 0; i < newArr.length; i++) {
var savedPerson = newArr[i];
console.log(savedPerson);
console.log(savedPerson.title)
console.log(savedPerson.description)
}
您将 newItem 设置为一个对象,并调用 localStorage.setItem("newData", JSON.stringify(newItem));
保存它。
然后var oldItems = JSON.parse(localStorage.getItem('newData'))
会return一个字符串,但是一个字符串没有push方法
您可能要做的是创建一个数组,然后将对象添加到其中。然后你可以迭代对象数组。
举个例子
var newItem = {
title: $('#title').val(),
description: $('#description').val()
}
if (localStorage.getItem("newData") === null) {
localStorage.setItem("newData", JSON.stringify([newItem]));
} else {
var oldItems = JSON.parse(localStorage.getItem('newData'));
oldItems.push(newItem);
localStorage.setItem('newData', JSON.stringify(oldItems));
}
var newArr = JSON.parse(window.localStorage.getItem('newData'));
for (var i = 0, len = newArr.length; i < len; i++) {
var savedPerson = newArr[i];
console.log(savedPerson)
console.log(savedPerson.title)
console.log(savedPerson.description)
}