我在一个应用程序中工作,我需要在整个应用程序会话中维护页面的最后一次访问的UI状态(如列过滤器,排序,选定的记录,调整大小的窗口小部件,列等),这只能在会话结束(并通过手动注销或浏览器关闭将其发布到会话结束时的db)。我有几件事要问
我有一个永不刷新的父页面(这是一个框架页面,我无法控制这个页面)。我的页面在框架上,此框架将在运行时加载不同的页面。所以我决定在运行时使用像这样的
在我的父页面中创建一个列表对象parent.parent.parent.eval(“var sam;”) 并在整个会话期间填充我的状态对象(以JSON格式)。
是否使用这种方法推荐?在客户端维护这么多数据是否可以?我没有太多的javascript oject deallocation capablitites ..它会不会影响系统??
我刚开始担心,浏览器可以承担这个负担吗?有人可以建议我最好的javascript方法。
答案 0 :(得分:0)
我理解你在做什么,但你并没有给我们足够的信息来给出一个好的答案。你问
可以保持这个数量 客户端的数据??
但是你并没有真正告诉我们你正在使用多少数据。
就个人而言,我认为你会没事的。存储中等到大量的数据将影响RAM,这一天并不是一个巨大的问题 - 当您开始执行真正的CPU密集型工作时,JavaScript的真正性能问题就出现了,例如大量的DOM交互,大量的迭代,以及递归。
哦,我可能会鼓励你在这个框架的范围内创建变量
top.varname = null;
而不是
parent.parent.parent.eval( 'var varname;' );