我学到了sessionStorage
(会话期间持久化)和localStorage
(如果不删除就永远持久化)之间的区别。
我可以看到localStorage
可以用作cookie的更好版本。(更大,而不是像cookie那样为每个HTTP请求传输到服务器)。
但是对于sessionStorage
,我在想我应该在什么时候有效地使用它?
我考虑了用户在pageA文本字段中的输入,然后在相同的选项卡或浏览器窗口中移动到pageB上,pageB可以查找sessionStorage。
除了上面的场景,我真的不能扩展我的猜测。谁能告诉我如何使用sessionStorage?
发布于 2011-12-14 09:28:36
对于ajax驱动的动态界面,很多时候没有任何东西存储界面外观的当前状态(例如,选择了哪个选项卡)。sessionStorage
可用于存储界面的状态,因此当返回页面时,您可以将屏幕恢复为用户查看的方式。
另一个用途是,如果您正在处理一个对象,则可以将id存储为一个全局变量:currentInvoiceId
。
每个页面都需要的用户设置,比如特殊的布局或模板,可以预先加载一次并放入sessionStorage
中,以便于访问。
有些东西你只想让用户在每次登录时看到一次,比如新闻弹出窗口。你可以存储他们已经在sessionStorage
中看过了。这也适用于您希望用户在每次登录时只执行一次的操作。
与使用视图状态、隐藏的<input>
字段或<input>
参数在页面之间传递数据相比,这是一个很好的选择。
发布于 2019-02-01 08:31:10
使用sessionStorage的主要原因是,如果您的用户在两个不同的选项卡中打开同一个页面两次,那么您需要为这两个选项卡创建单独的存储区。例如,考虑一个您正在购买机票的站点(并且您只能购买一张机票,就像机票流一样,而不是购物车的情况)。如果用户试图在两个不同的选项卡中购买两张门票,您不会希望这两个会话相互干扰。sessionStorage允许您独立地跟踪跨多个页面加载的会话。
https://stackoverflow.com/questions/8498357
复制相似问题