Count Up window.localStorage.getItem via Javascript

Count Up window.localStorage.getItem via Javascript

本文关键字:via Javascript getItem localStorage Up window Count      更新时间:2023-09-26

我尝试在本地存储中输入一个数字,但++没有其他方式

window.localStorage.setItem('run','++')

这是完整的代码

<script type="text/javascript">
    if(window.localStorage.getItem('run')==null){
        window.localStorage.setItem('run','1')
    }
    else if(window.localStorage.getItem('run')==1){
        window.localStorage.setItem('run','++')
        window.location = "index_aerosoft.html";
    }
    else if(window.localStorage.getItem('run')==25){
        alert("hey 25times");
        window.localStorage.setItem('run','null')
    };
</script>

localStorage只包含字符串。

如果你想在其中保留一个计数器,你必须解析它:

var c = parseInt(localStorage['run']||'0', 10); // read, with 0 as default value
c++; // increment
localStorage['run'] = c; // store the incremented value

本地存储仅存储字符串。而且它不能将参数解析为表达式以动态递增值,您必须手动执行此操作。

因此,您首先需要获取该值并将其解析为整数:

i = parseInt(window.localStorage.getItem('run'));

然后,您可以存储递增的值:

window.localStorage.setItem('run',(i + 1));

注意:在您的条件下

else if(window.localStorage.getItem('run')==1){

您检查是否存储了1,我想您缩进以检查该值是否小于 25?如果没有,增加值是没有意义的,因为以下语句将始终存储 2...

if(window.localStorage.getItem('run')==null){

        window.localStorage.setItem('run','1');
        alert("First start");
    }else if(window.localStorage.getItem('run')==10){
        window.localStorage.setItem('run','1');
    }else{
        var run = window.localStorage.getItem('run');
        var irun;
        irun = (parseInt(run) + 1);
        window.localStorage.setItem('run',irun.toString());
        window.location = "index_xyz.html";
        alert(window.localStorage.getItem('run'));
    }
</script>