本文探讨在HTML页面中通过JavaScript保存变量值的问题。直接声明的局部变量在页面刷新或脚本重执行时会重置,而将变量作为对象属性存储,可以在多次操作间保持状态不变。文章提供了具体的代码示例,展示了如何利用对象属性实现页面内数据的持久化保存。
局部变量状态丢失问题
此前在HTML页面中嵌入了一段JavaScript代码,试图在点击按钮时对变量i进行加一操作。然而发现,无论点击多少次按钮,变量i的初始值始终没有发生变化,每次点击似乎都从初始状态重新开始。
具体实现代码如下所示:
<script language=javascript>
var i=2;
</script>
利用对象属性保存变量状态
随后,尝试将变量声明封装在一个名为test的对象内部。通过这种方式,每次修改test.i的值后,该值能够被正确保存并保留,从而实现了状态的持久化。
改进后的代码如下:
<script language=javascript>
var test={};
test.i=2;
</script>