为什么我的本地存储函数不更新变量?

时间:2021-06-25 16:46:20

标签: javascript

所以我试图创建一个增量游戏或点击游戏或闲置游戏。其他一切都很好,但是当涉及到保存和加载功能时,它就坏了。所以我的加载函数工作得很好,但问题是我的保存函数不会保存更新的变量,而是保存未更新的变量,这基本上使得保存和加载毫无意义。

代码:

function saving() {
    localStorage.setItem('save',JSON.stringify(save));
    alert("save correctly!");
}

function load() {
    var savegame = JSON.parse(localStorage.getItem("save"));
    if (typeof savegame.Cookies !== "undefined") cookies = savegame.Cookies;
    if (typeof savegame.Cursors !== "undefined") cursors = savegame.Cursors;
    if (typeof savegame.Farms !== "undefined") farms = savegame.Farms;
    console.log("cookies : ", cookies);
    console.log('farms :', farms);
    console.log('cursors :', cursors);
}

我将变量“save”定义如下。

var save = {
    Cookies: cookies,
    Cursors: cursors,
    Farms: farms
}

和 cookie、游标和农场,变量都设置为零。 但是,在我增加游戏中的值后,保存变量仍在使用未增加的变量。 我希望它像这样保存变量:2000 个 cookie、30 个游标、7 个农场,而不是全部为 0。 我对 js 还很陌生,最近两天我一直在尝试这个。

也许只是一些无知粗心的错误,请高人指出。

1 个答案:

答案 0 :(得分:1)

您需要在每次更改变量 saving 时调用 save 方法。