【问题标题】:I am trying to save and load to local storage but I keep getting the error "Local storage is not defined" [closed]我正在尝试保存并加载到本地存储,但我不断收到错误“未定义本地存储”[关闭]
【发布时间】:2020-09-07 17:53:23
【问题描述】:

我不知道问题是什么,我正在尝试保存变量,请帮助。我正在尝试保存和加载,但不断收到涉及我的 save() 函数和调用它的按钮的错误消息。请帮我解决这个问题,我已经尝试修复它大约 30 分钟,但没有任何运气。

var money = 50;

var printpower = 0;

var autoclickprice = 50;

var autoclick = 0;

var printpowerprice = 50;

var gems = 0;

var fakegems = 0;

var gemcost = 1000;

var gemgrowercost = 5;

var gemgrower = 0;

var gemsellprice = 1250;

function update() {

  document.getElementById('TotalMoney').value = money;

  document.getElementById('MoneyPerSecond').value = autoclick;

  document.getElementById('MoneyPerClick').value = printpower;

  document.getElementById('AutoClickCost').value = autoclickprice;

  document.getElementById('PrintPowerCost').value = printpowerprice;

  document.getElementById('GemAmount').value = gems;

  document.getElementById('GemCost').value = gemcost;

  document.getElementById('GemGrowerCost').value = gemgrowercost;

  document.getElementById('GemsPerMinute').value = gemgrower;

  document.getElementById('GemSellPrice').value = gemsellprice;

  document.getElementById('FakeGemAmount').value = fakegems;

}

function add() {

  money = money + printpower;

  update();

}

function timer() {

  money = money + autoclick;

  update();

}

function buyautoclick() {

  if (money >= autoclickprice) {

    money = money - autoclickprice;

    autoclickprice = autoclickprice * 2;

    autoclick = autoclick + 1;

    update();

  }

}

function addprintpower() {

  if (money >= printpowerprice) {

    money = money - printpowerprice;


    printpowerprice = printpowerprice * 3;


    printpower = printpower + 1;


    update();

  }
}

function buygems() {

  if (money >= 1000) {

    money = money - 1000;

    gems = gems + 1;

    update();

  }

}

function buygemgrower() {

  if (gems >= gemgrowercost) {

    gems = gems - gemgrowercost;

    gemgrowercost = gemgrowercost * 2;

    gemgrower = gemgrower + 1;

    update();

  }

}

function gemsperminute() {

  fakegems = fakegems + gemgrower;

  update();

}

function sellgems() {

  if (fakegems >= 1) {

    money = money + gemsellprice;

    fakegems = fakegems - 1;

  }

}

function save() {

  localStoarge.setItem("money", "money");

}

function load() {

  const data = localStorage.getItem("money");

}

setInterval(timer, 1000);

setInterval(gemsperminute, 60000);
#moneydiv {
  width: 225px;
  height: 925px;
  padding: 10px;
  float: left;
  background-color: lime;
}

#gemdiv {
  width: 225px;
  height: 925px;
  padding: 10px;
  float: right;
  background-color: aqua;
}
<html>

<head>

  <link rel="stylesheet" type="text/css" href="index.css" />

  <title>

    Money Printer!

  </title>

</head>


<body>

  <script src="index.js">
    //nice try little kid, try agian -_-//
  </script>

  <div id="container">

    <div id="moneydiv" style="text-align: center">

      <button onclick="add()">
            
            Print Money
            
        </button>

      <button onclick="addprintpower()">
            
            Improve MPC
            
        </button>

      <br> Improve Money Per Click Cost:

      <br>

      <input type="text" id="PrintPowerCost" style disabled>

      <br> Money Per Click:

      <br>

      <input type="text" id="MoneyPerClick" style disabled>

      <br>
      <br>

      <button onclick="buyautoclick()">
            
            Buy Auto Clicker
            
        </button>

      <br> Auto Clicker Cost:

      <br>

      <input type="text" id="AutoClickCost" style disabled>

      <br> Money Per Second:

      <br>

      <input type='text' id="MoneyPerSecond" style disabled>

      <br>
      <br> Total Cash:

      <br>

      <input type="text" id="TotalMoney" style disabled>

      <br>
      <br>

    </div>

    <div id="gemdiv" style="text-align: center">

      <button onclick="buygems()">
            
            Buy Gems!
            
        </button>

      <br> Gem Cost:

      <br>

      <input type="text" id="GemCost" style disabled>

      <br>
      <br>

      <button onclick="buygemgrower()">
            
            Buy Gem Grower
            
        </button>

      <br> Gem Grower Cost(In Gems):

      <br>

      <input type="text" id="GemGrowerCost" style disabled>

      <br> Gems Per Minute:

      <br>

      <input type="text" id="GemsPerMinute" style disabled>

      <br> Total Gems:

      <br>

      <input type="text" id="GemAmount" style disabled>

      <br> Total Fake Gems:

      <br>

      <input type="text" id="FakeGemAmount" style disabled>

      <br>
      <br>

      <button onclick="sellgems()">
            
            Sell Fake Gems!
            
        </button>

      <br> Sell Price:

      <br>

      <input type="text" id="GemSellPrice" style disabled>

    </div>

    <div id="saveloaddiv" style="text-align: center;">

      <button onclick="save()">
                
                Save
                
            </button>

      <button onclick="load()">
                
                Load
                
            </button>

    </div>

  </div>

</body>

</html>

【问题讨论】:

  • 在函数保存中,您有一个拼写错误 localStoarge 而不是 localStorage。
  • 我修正了错字,现在它根本无法保存,它只是不这样做,我该如何解决这个问题

标签: javascript html css function file


【解决方案1】:

这是一个印刷错误,您在定义保存功能时写了“stoarge”而不是“storage”

【讨论】:

  • 我太笨了,非常感谢
  • 我修正了这个错字,现在它无法保存,我该如何解决这个问题?
  • 我猜你希望它保存可变钱而不是字符串钱,那么,你需要删除 setItem 函数的第二个参数周围的引号。像这样: setItem("money", money).我也承认我可能无法很好地理解您的问题,如果不是这样,请澄清问题,以便我更好地理解您。谢谢
  • 我正在尝试将所有变量保存到浏览器 chrome 中的本地存储中,我尝试删除引号以保存变量,但这似乎也不起作用,我想要这样当我点击保存按钮时,它会保存我的所有变量,然后当用户返回页面并点击加载时,他们的进度会返回。很抱歉这个问题没有说得更清楚。
  • 好的。我再次检查了你的代码,我认为你做错了什么。我认为更新功能应该以另一种方式工作。这就是我的意思。而不是 document.getElementById('TotalMoney').value = money;我想你想这样做:money = document.getElementById('TotalMoney').value;
猜你喜欢
  • 2021-01-30
  • 2021-12-06
  • 1970-01-01
  • 1970-01-01
  • 2020-02-18
  • 1970-01-01
  • 2016-04-29
  • 2023-03-29
  • 2018-03-04
相关资源
最近更新 更多