关于javascript:如何将HTML的localStorage设置为整数而不是字符串?

How can I set HTML's localStorage to an integer rather than string?

本问题已经有最佳答案,请猛点这里访问。

我在一个我想玩的游戏中使用localStorage有问题。另外,一个not是money变量设计为每秒增加1。以下是我的一些代码:

1
2
3
4
5
6
7
8
9
10
11
var money = 0;
window.onload = function () {
    load();
    window.setInterval(save, 2500);
};
function save(){
    localStorage.setItem("money", money);
};
function load() {
    document.getElementById("moneyText").innerHTML = localStorage.getItem("money");
};

我的问题是,save函数每2500毫秒就重写一次money变量。所以我把moneyText元素的innerHtml改为同一个localStorage对象,就像这样:

1
2
3
4
function load() {
    document.getElementById("moneyText").innerHTML = localStorage.getItem("money");
    money = localStorage.getItem("money");
};

它确实保存了值。但是,现在当它增加时,它显示如下:

1
2
3
4
01
011
0111
...

正如我之前添加的那样,它显示为:

1
2
3
4
1
2
3
...


本地存储中的值始终是字符串。

在分配money之前,可以使用parsefloat。

1
 money = parseFloat(localStorage.getItem("money"));


localstorage只保存字符串。用途:

1
2
3
money = parseFloat(localStorage.getItem("money"));

localStorage.setItem("money", money.toString());