会话存储编号变量存储为字符串

session storage number variable stored as string

我正在尝试使用 sessionstorage 存储 js 数字变量,但是当我从存储中检索变量时,当我将它们加在一起时,它们的行为就像字符串变量。我认为这可能与我如何使用 sessionStorage.setItem 但不确定

存储变量有关

我已将代码保存在 http://codepen.io/MHUMPHRI/pen/bpXpPm

非常感谢任何帮助。干杯。麦克

<html>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>

OUTPUT TOTAL IS:
<div id="TotalOutput"></div>
<br>

<script>
  $(document).ready(function () { 
            InputTotals()
            OutputTotals()
        });
</script>

</html>

<script>

var input1 = 222
var input2 = 111
var input3 = 777
var input4 = 777

function InputTotals() {
  var totalA = input1 + input2;
  var totalB = input3 + input4;
  sessionStorage.setItem("TotalA", totalA);
  sessionStorage.setItem("TotalB", totalB);
}

function OutputTotals() {
  var output1 = sessionStorage.getItem("TotalA");
  var output2 = sessionStorage.getItem("TotalB");
  var totaloutput = output1 + output2;
  $("#TotalOutput").html(totaloutput);
}

</script>

Number(var) 应该可以定义为数字。为我工作。

如果您要处理小数,请使用 parseInt (with radix 10, to be compatible with older browsers) to parse a string to get an integer. Use parseFloat

var output1 = parseInt(sessionStorage.getItem("TotalA"), 10);