使用 localStorage.getItem() 获取不同属性的值?
Get the value of differents attributes with localStorage.getItem()?
我正在尝试创建一个小应用程序,我需要存储一些数据。
我这样存储它们:
localStorage.setItem(taskID, taskTitle, taskTotal, taskActual, taskProgress);
(taskID
taskTitle
等是我从表格中获得的值)
所以这实际上很好用,我只有一个问题:
我可以使用以下方法轻松检索 taskID
:
for (i = 0; i < localStorage.length; i++) {
var taskID = "task-" + i;
};
但我怎样才能检索到其他值?就像我想检索 taskActual
值一样,我怎样才能轻松做到这一点?
事情不是这样的。您的代码在键 taskID
下设置值 taskTitle
,其余参数将被丢弃。然后你只能使用 localStorage.getItem( taskID )
.
检索 taskTitle
如果要存储更多属性,则需要存储多个项目,例如:
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
在本地存储中,您正在保存一个键和一个值。在这种情况下,您的 'keys' 是命名项,即 TaskId、taskTitle 等。您需要具有与键关联的相应值。例如:localStorage.setItem('taskId',1);在此示例中,如果您调用 localStorage.getItem('taskId'),结果将是 1,因为它是对应的值。
我正在尝试创建一个小应用程序,我需要存储一些数据。 我这样存储它们:
localStorage.setItem(taskID, taskTitle, taskTotal, taskActual, taskProgress);
(taskID
taskTitle
等是我从表格中获得的值)
所以这实际上很好用,我只有一个问题:
我可以使用以下方法轻松检索 taskID
:
for (i = 0; i < localStorage.length; i++) {
var taskID = "task-" + i;
};
但我怎样才能检索到其他值?就像我想检索 taskActual
值一样,我怎样才能轻松做到这一点?
事情不是这样的。您的代码在键 taskID
下设置值 taskTitle
,其余参数将被丢弃。然后你只能使用 localStorage.getItem( taskID )
.
taskTitle
如果要存储更多属性,则需要存储多个项目,例如:
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
在本地存储中,您正在保存一个键和一个值。在这种情况下,您的 'keys' 是命名项,即 TaskId、taskTitle 等。您需要具有与键关联的相应值。例如:localStorage.setItem('taskId',1);在此示例中,如果您调用 localStorage.getItem('taskId'),结果将是 1,因为它是对应的值。