使用 javascript 在电脑上存储本地变量
store a var local on a pc with javascript
我正在尝试将本地玩家的高分存储在他的电脑上。我不知道这是否可能,而且我在这个网站上没有找到关于它的问题。我只有一个包含数字的变量。我想将它存储在他的电脑上,所以当玩家在他的浏览器中再次玩游戏时,他的高分仍然可用。
使用本地存储:
window.localStorage.score="20" // storing
window.localStorage.score // getting the score again.
这有点奇怪,除非我们谈论的是 nodeJS (?) 存储到文件系统或其他本地存储。
如果您想保留某个值以便下次加载时将从 javascript 上的存储位置获取该值,您必须使用 cookie 来完成,
但每次您清除 cookie 时,它都会被清除,并且不会在您机器上的多个浏览器之间共享。
话虽如此,这就是您使用 javascript:
将值存储到 cookie 的方式
document.cookie="somekey=savedValue";
var readValue = document.cookie;
旧浏览器不支持localStorage
。所以使用 cookie 作为后备。
if(window.localStorage)
window.localStorage.setItem("highscore",1000);
else
document.cookie="highscore=1000; expires=Thu, 31 Dec 2018 12:00:00 UTC";
检索值
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) == 0)
return c.substring(name.length,c.length);
}
return "";
}
if(window.localStorage)
var highscore=window.localStorage.getItem("highscore");
else
var highscore=getCookie("highscore");
除了localStorage
,您还可以使用Cookies。
var expDate=new Date();
var score=20;
expDate.setDate(expDate.getDate()+365); // expiration after one year
// Setting cookie
document.cookie='score='+score+';expires='+expDate;
// Retrieving the cookie
var yourOldScore = document.cookie.match(/score=(.*?)\;/)[1];
我正在尝试将本地玩家的高分存储在他的电脑上。我不知道这是否可能,而且我在这个网站上没有找到关于它的问题。我只有一个包含数字的变量。我想将它存储在他的电脑上,所以当玩家在他的浏览器中再次玩游戏时,他的高分仍然可用。
使用本地存储:
window.localStorage.score="20" // storing
window.localStorage.score // getting the score again.
这有点奇怪,除非我们谈论的是 nodeJS (?) 存储到文件系统或其他本地存储。
如果您想保留某个值以便下次加载时将从 javascript 上的存储位置获取该值,您必须使用 cookie 来完成, 但每次您清除 cookie 时,它都会被清除,并且不会在您机器上的多个浏览器之间共享。
话虽如此,这就是您使用 javascript:
将值存储到 cookie 的方式document.cookie="somekey=savedValue";
var readValue = document.cookie;
localStorage
。所以使用 cookie 作为后备。
if(window.localStorage)
window.localStorage.setItem("highscore",1000);
else
document.cookie="highscore=1000; expires=Thu, 31 Dec 2018 12:00:00 UTC";
检索值
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) == 0)
return c.substring(name.length,c.length);
}
return "";
}
if(window.localStorage)
var highscore=window.localStorage.getItem("highscore");
else
var highscore=getCookie("highscore");
除了localStorage
,您还可以使用Cookies。
var expDate=new Date();
var score=20;
expDate.setDate(expDate.getDate()+365); // expiration after one year
// Setting cookie
document.cookie='score='+score+';expires='+expDate;
// Retrieving the cookie
var yourOldScore = document.cookie.match(/score=(.*?)\;/)[1];