javascript - 从 localStorage 检索数值数据

标签 javascript html local-storage

所以我正在开发这个游戏,并且我遇到了保存系统的问题。当我尝试保存和加载游戏时,我得到的 playerLevelNaN,或者不是数字。我知道这是为什么,这是因为输出是引号内的数字。我需要知道是否有任何方法可以将变量设置为等于被回调的同一变量。如果您不明白我的问题,这是我的代码:

function saveGame() {

    localStorage.setItem("PLAYERLEVEL", playerLevel);
    localStorage.setItem("PLAYERATTACK", Attack);
    localStorage.setItem("PLAYERDEFENSE", Defense);
    localStorage.setItem("PLAYERAGILITY", Agility);
    localStorage.setItem("PLAYERCOINS", Coins);
    localStorage.setItem("PLAYERHEALSLEFT", healsLeft);
    localStorage.setItem("PLAYERPOSSHEALS", possHealsLeft);
    localStorage.setItem("PLAYERLIVESLEFT", livesLeft);
};

function loadGame() {

    playerLevel = localStorage.getItem("PLAYERLEVEL");
    Attack = localStorage.getItem("PLAYERATTACK");
    Defense = localStorage.getItem("PLAYERDEFENSE");
    Agility = localStorage.getItem("PLAYERAGILITY");
    Coins = localStorage.getItem("PLAYERCOINS");
    healsLeft = localStorage.getItem("PLAYERHEALSLEFT");
    possHealsLeft = localStorage.getItem("PLAYERPOSSHEALS");
    livesLeft = localStorage.getItem("PLAYERLIVESLEFT");
};

预先感谢您的帮助!

最佳答案

当您想要检索 localStorage 中的数值数据时,您需要将该值转换回数值(使用 parseInt() 或 parseFloat())到您需要的数据类型,因为 localStorage 将所有内容存储为字符串,因此请执行以下操作:

playerLevel = parseInt(localStorage.getItem('PLAYERLEVEL'));

关于javascript - 从 localStorage 检索数值数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28643851/

相关文章:

javascript - 如何修改 Electron 浏览器窗口中使用的 HTML 文件?

javascript - 菜单总是在顶部和水平滚动

javascript - 将 HTML 转换为有效字符串

javascript - 如何使用本地存储为单个键创建多个值

javascript - HTML5 WebSQL 优化/缓存选项?

javascript - 根据URL路径创建代理

javascript - 如何在 angular.js 中使用 ng-model 获取按钮文本?

html - CSS 居中 div 并排

JavaScript 不能写在 element.style.position

javascript - 在进行ajax调用时迭代localstorage