一尘不染

sessionStorage和localStorage的范围

javascript

我阅读了有关sessionStorage和localStorage的一些文档,但是我不明白范围是什么:域,特定页面?

并且如果在上述每个页面上运行(idvalue是查询字符串中的值):

localStorage.setItem('ID',idvalue);

我最终会存储3个不同的值,还是两个值会互相覆盖?


阅读 549

收藏
2020-05-01

共2个答案

一尘不染

这些值将互相覆盖。每个密钥名称对对于协议和域而言都是唯一的,而与路径无关。

可以通过document.domain属性更改受影响的域。

  • sub.example.com-> example.com可以(子域)
  • sub.example.com-> other.example.com不可能
2020-05-01
一尘不染

会话存储:

  1. 值仅在存储它们的窗口或选项卡时持续存在。

  2. 值仅在创建它们的窗口或选项卡中可见。

本地存储:

  1. 值保留窗口和浏览器的生命周期。

  2. 值在同一来源运行的每个窗口或选项卡之间共享。

因此,通过阅读和理解这一点,每个键值对在每个域中都是唯一的,因为本地存储会在整个窗口或选项卡上保持值不变。

2020-05-11