Javascript 是否依赖于本地存储连接?

Javascript 是否依赖于本地存储连接?,javascript,google-chrome,local-storage,Javascript,Google Chrome,Local Storage,我为我的孩子们制作了一个小JavaScript数学游戏,它使用localStorage存储高分。它工作正常,做它应该做的事情,即使在浏览器关闭或计算机关闭时也能保存高分。然而,今天我尝试在不同的互联网连接上玩游戏进行测试,我使用的两个localStorage项目(一个用于分数,一个用于名称)都返回未定义的 这两次游戏都是在Windows7(同一台电脑)的ChromeV55上玩的。最初是通过我们家的Wi-Fi连接,但今天是通过公共(咖啡店)Wi-Fi连接 localStorage仍然可以通过公共W

我为我的孩子们制作了一个小JavaScript数学游戏,它使用
localStorage
存储高分。它工作正常,做它应该做的事情,即使在浏览器关闭或计算机关闭时也能保存高分。然而,今天我尝试在不同的互联网连接上玩游戏进行测试,我使用的两个
localStorage
项目(一个用于分数,一个用于名称)都返回
未定义的

这两次游戏都是在Windows7(同一台电脑)的ChromeV55上玩的。最初是通过我们家的Wi-Fi连接,但今天是通过公共(咖啡店)Wi-Fi连接

localStorage
仍然可以通过公共Wi-Fi连接工作——我可以设置新值并检索它们——但我想知道为什么它不存储原始值。未清除任何浏览器历史记录或cookie。有人知道
localStorage
是否有单独的容器用于不同的Internet连接吗

更新:
localStorage
对象工作正常—它保存并保存数据—唯一的问题是,当连接到其他网络连接时检索时,它会丢失值

这是用于从
localStorage
获取数据的代码:


如果(localStorage.mb_hiscore==0){localStorage.mb_name=“”;}
hiscore.innerHTML=localStorage.mb_hiscore+“
”+localStorage.mb_name;

再次更新:Chrome在公共Wi-Fi和我家Wi-Fi上显示相同的来源:


此外,我在公共Wi-Fi连接上设置的
localStorage
值在我稍后在家庭网络上检索时一直保留,因此这是Chrome迄今为止唯一一次删除这些值。

每个来源都有自己的
localStorage
。如果您检查
document.location.origin的值,您可能会得到如下结果,例如:“

根据您访问应用程序的方式,如果这些部分中的任何部分发生更改,无论是主机名、端口号还是协议,您都将处理不同来源是否因此修改其自身存储。从浏览器的角度来看,这是一个完全不同的终点


再次尝试复制您的问题,这次请注意您正在使用的地址。

不,没有。我必须问一下-你在哪里同时使用同一台电脑?你是如何访问webapp的?它是本地应用程序(即
localhost
)还是通过网络?如果通过网络,您是否碰巧切换IP/域以访问应用程序?是否可能您有不同的浏览器会话?例如私人/隐姓埋名模式?@Archer-yup,两台电脑都是同一台times@Vinny-不,我也没有使用隐姓埋名模式谢谢,我回家后会检查的。当我在连接到公共Wi-Fi时加载游戏时,检查源代码会产生“file:///”,因此我可以想象在另一个连接上它会是相同的,因为它是本地文件,但我会检查以确定。我在我的家庭网络上检查了源代码,得到了相同的结果<代码>本地存储
从公共Wi-Fi持久化到我的家庭网络。