在循环时从localStorage中求和数字值

sum number values from localStorage while looping

本文关键字:求和 数字 localStorage 循环      更新时间:2023-09-26

我发现相同的例子一遍又一遍地关于如何求和值,但我还没有能够使用它为自己。我有两组数据保存在localStorage。两个键的第一个值是我要加在一起的数字。我发现了许多。each函数做循环,但我想在通过键/值对查找时做,有一个变量包含键/值对循环的总和。这是我的代码:

$(document).ready(function(){
if(localStorage.length > 0){
    for (var i=0, len=localStorage.length; i<len; i++){
        var sum = 0;
        var key = localStorage.key(i); 
        var val = localStorage.getItem(key);
        var valu = val.split("*");
        alert (valu[0]); //alerts twice 130 and 160
        sum += valu[0]; //didn't do anything
        sum += parseInt(valu[0]); //also didn't work
        alert (sum);
    }
}
});

所以这两个值是130和160,它们在函数循环时发出警报…那么我怎么能把它们加起来,然后在循环的时候得到一个总数呢?

在循环外需要var sum = 0;,如下所示:

$(document).ready(function(){
    if(localStorage.length > 0){
        var sum = 0;
        for (var i=0, len=localStorage.length; i<len; i++){
            var key = localStorage.key(i); 
            var val = localStorage.getItem(key);
            var valu = val.split("*");
            alert (valu[0]); //alerts twice 130 and 160
            sum += parseInt(valu[0]); //also didn't work
            alert (sum);
        }
    }
});