我正在尝试创建一个小应用程序,我需要存储一些数据。 我把它们存储起来:
localStorage.setItem(taskID, taskTitle, taskTotal, taskActual, taskProgress);
(taskID
taskTitle
等等是我从表单中获取的值)
所以这实际上运作良好,我只有一个问题: 我可以使用
轻松检索taskID
for (i = 0; i < localStorage.length; i++) {
var taskID = "task-" + i;
};
但是如何检索其他值?就像我想要检索taskActual
值一样,我怎么能轻松地做到这一点?
答案 0 :(得分:1)
这不是它的工作原理。您的代码在键taskTitle
下设置值taskID
,其余参数将被丢弃。然后,您只能使用taskTitle
检索localStorage.getItem( taskID )
。
如果要存储更多属性,则需要存储多个项目,例如:
var taskID = 'task-1';
localStorage.setItem(taskID +'-title', taskTitle);
localStorage.setItem(taskID +'-total', taskTotal);
// etc
// to retrieve:
var title = localStorage.getItem('task-1-title');
或存储序列化的JSON:
var taskId = 'task-1', taskData = { title : 'task title', total : 'task total' /* etc.. */ };
// store
localStorage.setItem(taskID, JSON.stringify( taskData ) );
// retrieve
var task = JSON.parse( localStorage.getItem('task-1') );
// now you can use task.title, task.total etc
答案 1 :(得分:0)
在本地存储中,您将保存密钥和值。在这种情况下,您的关键词是&#39;是命名项,即TaskId,taskTitle等。您需要具有与键关联的相应值。例如:localStorage.setItem(&#39; taskId&#39;,1);在这个例子中,如果你调用localStorage.getItem(&#39; taskId&#39;),结果将是1,因为它是相应的值。