我在尝试制作的游戏中使用localStorage
时遇到问题。同样不是money
变量被设计为每秒增加1。这是我的一些代码:
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
变量。所以我将innerHtml
元素的moneyText
更改为相同的localStorage
对象,如下所示:
function load() {
document.getElementById("moneyText").innerHTML = localStorage.getItem("money");
money = localStorage.getItem("money");
};
哪个可以节省价值。 然而,现在当它增加时,它会显示如下:
01
011
0111
...
在此之前,我添加了该行,它显示为:
1
2
3
...
答案 0 :(得分:3)
The values in Local Storage are always a string
您可以在分配money
之前使用parseFloat。
money = parseFloat(localStorage.getItem("money"));
答案 1 :(得分:2)
localStorage仅包含字符串。使用:
money = parseFloat(localStorage.getItem("money"));
localStorage.setItem("money", money.toString());