会话存储和本地存储的范围
Scope of sessionStorage and localStorage
我读了一些关于sessionStorage和localStorage的文档,但我不明白范围是什么:域,特定的页面?
例如,如果我有以下页面:
http://example.com/products.aspx?productID=1
http://example.com/products.aspx?productID=2
http://example.com/services.aspx?serviceID=3
如果在上面的每个页面上我都运行(idvalue是querystring中的值):
localStorage.setItem('ID',idvalue);
我最终会存储3个不同的值吗?还是这些值会互相覆盖?
会话存储:
-
值只在存储它们的窗口或选项卡中持续存在。
-
值仅在创建它们的窗口或选项卡中可见。
本地存储:
-
值保持窗口和浏览器的生存期。
-
在同一原点运行的每个窗口或选项卡之间共享值。
因此,通过阅读和理解这一点,每个键值对对于每个域都是唯一的,因为本地存储在窗口或选项卡中保持值。
这些值将互相覆盖。无论路径如何,每个密钥名称对对于协议和域都是唯一的。
受影响的域可以通过document.domain
属性进行更改。
sub.example.com
->example.com
是可能的(子域)sub.example.com
->other.example.com
不可能
参考文献:
- MDN:Web存储API:";sessionStorage为每个给定的原点维护一个单独的存储区域[…]"
- MDN:来源:";只有当方案、主机名和端口都匹配时,两个对象才具有相同的原点"
相关文章:
- 正在全局范围中查找JavaScript函数
- 如何通过数组更新角度子范围
- 将作用域存储在JSON中
- 使用javascript存储变量的最安全方式
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 如何使用ngrepeat和双向绑定获得指令的隔离范围
- 将IP与存储在阵列中的范围相匹配
- 如何存储浏览器范围的本地存储值
- 如何在 angularjs 应用程序中注销时删除/清除存储在范围变量中的数据
- 我可以使用什么数据结构来存储和检索离散值的范围
- 子域的本地存储范围
- 会话存储和本地存储的范围
- angularjs范围内可以存储的最大数据大小是多少?具有重作用域的应用程序的性能
- 角度-将选定选项指定/存储到范围变量以供使用
- 数据存储获取范围内的最后一个键
- 使用localStorage存储jQuery范围滑块的最大值和最小值
- 如何以json格式存储日期,并在给定范围内逐个显示
- 在mySQL数据库中存储时间范围并与当前时间进行比较
- 在页面刷新时保留 Cookie 存储区的范围值
- 如何在网格中获取存储范围