Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 包含字符串的getItem localstorage_Javascript_Html_Local Storage - Fatal编程技术网

Javascript 包含字符串的getItem localstorage

Javascript 包含字符串的getItem localstorage,javascript,html,local-storage,Javascript,Html,Local Storage,我的localstorage中有多个键:task-1、task-2、task-3…我正在寻找一种方法来获取以字符串“tasks-”开头的键的总数,以便将其放置在我的循环中,而不是localstorage.length 事实上,如果我有一个使用localstorage的其他应用程序,我的循环将返回一个与localstorage中的所有键对应的长度,包括有问题的应用程序之外的键 i=0; if(localStorage.getItem("task-"+i) != null){

我的localstorage中有多个键:
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)

     }
  }
i=0;
if(localStorage.getItem(“任务-”+i)!=null){
对于(i=0;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
}

应该切换语句。循环检查所有项目,看看每个项目是否符合您的条件

var count = 0;
for(i = 0; i < localStorage.length; i++){ 
    if(localStorage.getItem("task-"+i) != null){
        console.log(i)
        count++;
    }
}
// count contains number of items beginning with task
var计数=0;
对于(i=0;i
那你呢

localStorage['num-tasks'] = tasks.length;
localStorage['num-tasks'] = tasks.length;