我的本地存储中有多个键:task-1,task-2, task-3 ...
我正在寻找一种方法来获取以字符串“tasks-”开头的键的总数,以便将其放置在我的循环中,而不是localStorage.length
。
实际上,如果我有另一个使用localstorage的应用程序,则循环将返回一个长度,该长度对应于localStorage中的所有键,包括不在所讨论应用程序中的键。
i=0;
if(localStorage.getItem("task-"+i) != null){
for( i = 0; i < localStorage.length; i++){
console.log(i)
}
}
非常感谢你的帮助
最佳答案
如果您控制这些项目的创建,则将它们存储在对象中并使用JSON在对象和字符串之间进行转换会更有意义:
var tasksObject = {
task1: ...,
task2: ...,
...
};
window.localStorage.setItem('tasks', JSON.stringify(tasksObject));
... later ...
var tasks = JSON.parse(window.localStorage.getItem('tasks'));
for (var task in tasks) {
// do stuff
}