在 Javascript 中保存和加载不起作用
Saving and loading in Javascript not working
我目前正在用 HTML 和 Javascript 制作一个简单的游戏(我的第一个游戏)。这是保存代码:
function save()
{
var save = {
ducks: ducks,
ponds: ponds,
pondCost: pondCost,
ponds: ponds,
vacuums: vacuums,
vacuumCost: vacuumCost,
vacuum: vacuum,
llama: llama,
llamaCost: llamaCost,
llamas: llamas
}
localStorage.setItem("save",JSON.stringify(save));
};
这是加载代码:
function load()
{
var savegame = JSON.parse(localStorage.getItem("save"));
if (typeof savegame.ducks !== "undefined") ducks = savegame.ducks;
if (typeof savegame.ponds !== "undefined") ponds = savegame.ponds;
if (typeof savegame.pond !== "undefined") pond = savegame.pond;
if (typeof savegame.pondCost !== "undefined") pondCost = savegame.pondCost;
if (typeof savegame.vacuums !== "undefined") vacuums = savegame.vacuums;
if (typeof savegame.vacuum !== "undefined") vacuum = savegame.vacuum;
if (typeof savegame.vacuumCost !== "undefined") vacuumCost = savegame.vacuumcost;
if (typeof savegame.llama !== "undefined") llama = savegame.llama;
if (typeof savegame.llamas !== "undefined") llamas = savegame.llamas;
if (typeof savegame.llamaCost !== "undefined") llamaCost = savegame.llamaCost;
document.getElementById('ponds').innerHTML = ponds;
document.getElementById('vacuums').innerHTML = vacuums;
document.getElementById('vacuumCost').innerHTML = nextCost;
document.getElementById('pondCost').innerHTML = nextCost;
};
我还添加了一个重置功能,但是当我添加这个并按下重置按钮后,保存就不起作用了! (或加载)
function reset()
{
localStorage.removeItem("save")
}
所有这些按钮都附加到我的 HTML 中的一个按钮。
在浏览器中玩游戏:
https://dl.dropboxusercontent.com/u/104187515/TIGWNN/index.html
好吧,在没有完全调试您的代码的情况下,我在点击保存时遇到了错误。您在第 17 行的保存功能正在执行:
vacuum: vacuum,
您没有名为 vacuum 的全局变量,但您有一个名为 vacuums
的全局变量。该错误正在停止任何进一步的处理。
我目前正在用 HTML 和 Javascript 制作一个简单的游戏(我的第一个游戏)。这是保存代码:
function save()
{
var save = {
ducks: ducks,
ponds: ponds,
pondCost: pondCost,
ponds: ponds,
vacuums: vacuums,
vacuumCost: vacuumCost,
vacuum: vacuum,
llama: llama,
llamaCost: llamaCost,
llamas: llamas
}
localStorage.setItem("save",JSON.stringify(save));
};
这是加载代码:
function load()
{
var savegame = JSON.parse(localStorage.getItem("save"));
if (typeof savegame.ducks !== "undefined") ducks = savegame.ducks;
if (typeof savegame.ponds !== "undefined") ponds = savegame.ponds;
if (typeof savegame.pond !== "undefined") pond = savegame.pond;
if (typeof savegame.pondCost !== "undefined") pondCost = savegame.pondCost;
if (typeof savegame.vacuums !== "undefined") vacuums = savegame.vacuums;
if (typeof savegame.vacuum !== "undefined") vacuum = savegame.vacuum;
if (typeof savegame.vacuumCost !== "undefined") vacuumCost = savegame.vacuumcost;
if (typeof savegame.llama !== "undefined") llama = savegame.llama;
if (typeof savegame.llamas !== "undefined") llamas = savegame.llamas;
if (typeof savegame.llamaCost !== "undefined") llamaCost = savegame.llamaCost;
document.getElementById('ponds').innerHTML = ponds;
document.getElementById('vacuums').innerHTML = vacuums;
document.getElementById('vacuumCost').innerHTML = nextCost;
document.getElementById('pondCost').innerHTML = nextCost;
};
我还添加了一个重置功能,但是当我添加这个并按下重置按钮后,保存就不起作用了! (或加载)
function reset()
{
localStorage.removeItem("save")
}
所有这些按钮都附加到我的 HTML 中的一个按钮。
在浏览器中玩游戏: https://dl.dropboxusercontent.com/u/104187515/TIGWNN/index.html
好吧,在没有完全调试您的代码的情况下,我在点击保存时遇到了错误。您在第 17 行的保存功能正在执行:
vacuum: vacuum,
您没有名为 vacuum 的全局变量,但您有一个名为 vacuums
的全局变量。该错误正在停止任何进一步的处理。