保留不同html文件之间的变量值

时间:2016-10-17 08:52:32

标签: javascript html

相当新的Javascript。

想象一下,我有一个Javascript文件:Book.js,其中我只有一些全局变量:var globalVar = 0;

想象一下,我还有两个单独的html文件:A.html和B.html,两者都使用上面的脚本:例如内有<script src="src/model/Book.js"></script>

  • 现在,当我打开A.html时,我可以看到globalVar被定义了。 然后我增加了使用控制台。
  • 然后,当我打开页面B.html时,我期待globalVar保留其值(因为我在Book.js文件中声明它是全局的,而B.html也加载了Book.js)但它是未定义。

这是预期的吗?

是否意味着全局变量的范围在一个html页面内?

显然第二次加载Book.js脚本时,在上一次调用Book.js期间声明的变量“消失了”。

2 个答案:

答案 0 :(得分:2)

  

这是预期的吗?

  

是否意味着全局变量的范围在一个html页面内?

它更类似于每个页面都是一个新程序(并且重新加载一个页面类似于退出程序然后再次运行它。)

  

所以这意味着如果你想访问在其他页面中声明的变量,你必须使用localStorage或类似的东西吗?

是。这就是为什么创建localStorage的原因。

答案 1 :(得分:0)

是的,Javascript正在一页加载,无法以这种方式更改,因为您正在从服务器重新加载它。基本上,每个页面都是不同的过程。

但是,您可以使用许多解决方法,如:

如果你使用复杂的应用程序,你可以在后面管理你的gobal变量