是否可以发送localStorage数据,然后再次检索它? AJAX?

时间:2017-01-30 21:35:43

标签: javascript php jquery arrays ajax

我的情况是这样的:我的js文件中有一个非常小的数组。当页面加载时,我有一个循环遍历数组的函数,并为数组中的每个项生成一个li元素,在li中显示它的名称和价格。数组的构造如下:

var gameList = [
{ name: "", value: 0.00},
]

其次,我在页面上有一个简单的表单,允许我向数组添加新项目,并使用localStorage,我可以保持动态更新的数组。我将新项目推送到数组(gameList),然后在会话结束时我使用localStorage设置它。

localStorage.setItem("updatedGameList", JSON.stringify(gameList));

我的代码开头有几行代表我的原始数组' gameList'等于本地存储的,更新的游戏列表。

var retrievedData = localStorage.getItem("updatedGameList");
gameList = JSON.parse(retrievedData);

所以现在这很好,但是我想要保留和维护的不断增长的阵列只能在这台机器上的浏览器中使用。

所以,我的问题是,我可以在某处发送本地存储的数据吗?也许是我的个人域名? (这是我将在应用程序完成后托管应用程序的地方)那样我就可以在我的js文件中正确引用它,以便数据始终可用?也许数组可以拥有它自己的js文件?

我意识到这可能不是处理本质上是数据库的最佳方式。但我只是通过在线课程的一部分,而且我正在使用我必须使用的工具。

最后,在维护数组方面,有没有办法以.js文件的形式将其发送回sublime?我知道这可能是一个疯狂的问题。更新的数组将变得非常大,最终可能有200个项目,并且从崇高内维护起来会容易得多。

感谢您的时间,如果此请求的一部分是荒谬的,请向您致歉! :)

我刚刚阅读了关于AJAX的内容,并认为可能有一种方法可以将更新后的数组作为json文件发送到我网站上的某个地方(!),然后在每个新文件的开头请求相同的文件会话,所以我一直在使用并保存最新更新的数组。

感谢阅读,希望你有一些答案! :)

1 个答案:

答案 0 :(得分:1)

虽然不是我想要的 - 基本上是一种自动获取新阵列的方法,将其发送到比本地存储更安全的地方,然后引用新阵列以便每次给我最新的起点(和所有只用javascript) - 在我开始使用数据库之前,以下建议的“脏”​​方式现在已经足够了。

来自Kirupa,在论坛上:

根本不是一个荒谬的问题!您可以在任何地方发送自己的数据,但这需要一定级别的服务器相关代码。最简单的来回发送数据的方法是通过JSON,您可以使用以下内容轻松地将数组转换为JSON格式:

var jsonData = JSON.stringify(myArray); 从这里,您可以将此数据发送到数据库,另一个网站或电子邮件服务器。如果你想要一些非常快速和肮脏的东西,你可以直接使用Chrome开发工具复制你的JSON化阵列的内容,将它作为.js文件保存在磁盘上,并在你的应用程序中再次引用它。这是一种手动方式,可以做一些你并不真正关心自动化的事情。

最佳解决方案是将其存储在数据库中。他们也更容易处理。 Firebase是我这样做的最佳选择,此视频可能会为您提供一些想法:https://www.youtube.com/watch?v=xAsvwy1-oxE