繁体   English   中英

localStorage 在 glitch.com 上无法正常工作?

[英]localStorage not working properly on glitch.com?

我创建了一个增量游戏,并有兴趣将变量存储在 localStorage 中。 我决定先在小范围内尝试它是明智的。 我阅读了相当多的 w3 教程和堆栈溢出问题,但我无法让它发挥作用。 我写了以下内容:

var val; //declares test variable
function incr() {
  val += 1;
  document.getElementById("count").innerHTML = val; //update the div where the variable is displayed
  console.log(val)
} //called on by an html button
function save() {
  var saveGame = {
    val: val
  }
  localStorage.setItem("saveGame",JSON.stringify(saveGame));
}
setInterval(function() {
  save();
  console.log("Game Saved.")
}, 100)
function saveDataTest() {
  if (localStorage.getItem("saveGame") || null) {
    load();
  } //called on by 'onload' event

}
function load() {
  var loadGame = JSON.parse(localStorage.getItem("saveGame"));
  val = loadGame.val;
} //split string into an object/variable and use said object/variable to define variable
 if (val == undefined){val = 0;}

正如我在标题中提到的,我正在使用 Glitch.com 并且考虑到我找不到任何问题,我认为这可能是网站的错。 如果我在代码中犯了错误,请纠正我。

var val = 0; //declares test variable
function incr() {
  val += 1;
  document.getElementById("count").innerHTML = val; //update the div where the variable is displayed
  console.log(val)
} //called on by an html button
function save() {
  var saveGame = {
    val: val.toString(),
  }
  localStorage.setItem("saveGame",JSON.stringify(saveGame));
}
window.onload = function() {
  loadGame = JSON.parse(localStorage.getItem("saveGame"));
  load();
};
setTimeout(function() {setInterval(function() {
  save();
  console.log("Game Saved.")
}, 10)},400) //use delay so that game does not save immediately after loading

}
function load() {
if (!(localStorage.getItem("saveGame") == null)) {
  val = Number(loadGame.val);}
} //split string into an object/variable and use said object/variable to define variable

使用 Number() 和 .toString() 将字符串转换为数字,反之亦然。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM