我正在尝试创建一个小应用程序,我需要存储一些数据。
我这样储存它们:
localStorage.setItem(taskID, taskTitle, taskTotal, taskActual, taskProgress);
(
taskID
taskTitle
等)。。是我从表单中获得的值)所以这实际上很有效,我只有一个问题:
我可以使用以下方法轻松检索
taskID
:for (i = 0; i < localStorage.length; i++) {
var taskID = "task-" + i;
};
但是,我如何检索其他值呢?例如,如果我想检索
taskActual
值,我如何轻松地做到这一点? 最佳答案
不是这样的。您的代码在keytaskTitle
下设置值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