我是Java的新手,作为一种锻炼,我正在做一个棋盘游戏的浏览器版本。
由于我是HTML世界的新手,所以我想了解更多有关Boiteajeux.net等网站上的异步游戏如何工作的信息。
我可以按照我的游戏中的步骤进行操作(我已经编写了很多逻辑程序),但是我不确定如何“保存”该信息,以便当游戏再次加载时,更改信息可以重新加载。
我对数据库及其存储方式了解不多,所以也许这就是我的知识漏洞。
我希望能够对游戏中的每个“移动”进行永久性的更改,以便在我点击刷新后不会返回到游戏前状态。 / p>
这是如何工作的?
答案 0 :(得分:0)
如果只希望刷新之间保持本地持久状态,则可以考虑使用localStorage。 LocalStorage是Document的存储对象的只读属性。与SessionStorage不同,存储的数据不会过期。
您可以像这样设置本地存储中的关键项:
localStorage.setItem('myKey', 'some data');
您可以像这样读取存储的项目:
var myItem = localStorage.getItem('myKey');
还有.remove('myKey')
和.clear()
方法可用于删除项目和清除存储对象。
假设您的游戏状态存储在某个状态对象中,则可以在状态更新时存储字符串化对象。
类似的东西:
localStorage.setItem('gameState', JSON.stringify(currentState));
并像这样访问浏览器加载时的状态:
var currentState = JSON.parse(localStorage.getItem('gameState'));
这比设置数据库要容易得多,但是如果要从另一个浏览器访问游戏状态,则可能需要使用数据库。