我阅读了有关sessionStorage和localStorage的一些文档,但我不明白范围是什么:域名,特定页面?
例如,如果我有以下页面:
http://example.com/products.aspx?productID=1
http://example.com/products.aspx?productID=2
http://example.com/services.aspx?serviceID=3
如果我在上面的每个页面上运行(idvalue是查询字符串中的值):
localStorage.setItem('ID',idvalue);
我最终会存储3个不同的值,或者值是否会相互覆盖?
答案 0 :(得分:132)
会话存储:
值只会在存储的窗口或标签中保持不变。
值仅在创建它们的窗口或选项卡中可见。
本地存储:
值会持续存在窗口和浏览器生命周期。
在同一来源的每个窗口或标签中共享值。
因此,通过阅读和理解,每个键值对每个域都是唯一的,因为本地存储在窗口或制表符中保持值。
答案 1 :(得分:80)
这些值将相互覆盖。无论路径如何,每个密钥名对对于协议和域都是唯一的。
可以通过document.domain
属性更改受影响的域名。
sub.example.com
- > example.com
是可能的(子域名)sub.example.com
- > {/ 1}}不可能