这是因为(会话)存储与文档而不是窗口相关联。或者更具体地说,它是根据当前文档的来源初始化的:
https://www.w3.org/TR/webstorage/#the-sessionstorage-attribute
当一个新的 Document 是在浏览上下文中创建的 在顶级浏览上下文中,用户代理必须检查是否存在 顶级浏览上下文具有会话存储区域 文件的来源。如果确实如此,那就是 Document 分配了 会话存储区。如果没有,那就是一个新的存储区域 必须创建文档的原点,然后 那 是个 Document 的 分配的会话存储区域。一个 Document 指定的存储区域 在a。的一生中不会改变 Document 。
Document
当然,每个窗口都有自己的文档,每个文档都有自己的窗口 1 仅隐含并且在WebStorage规范中没有说明,也没有访问明确的关系。
所以当他们说“ 文档的Window对象 “,他们指的是 文档的浏览上下文 ,作为 document.defaultView ,这是在HTML规范中定义的(紧邻 window.document )。
document.defaultView
window.document
<子> 1:它们甚至都不完全正确 威力 有相关的文档/窗口,但在我们访问存储的所有环境中,它们都会。 子>