LocalStorge和sessionStorage之间的区别

LocalStorge和sessionStorage之间的区别


localStorage

localStorage的生命周期是永久性的,也就是说使用localStorage存储数据,数据会被永久保存,数据不会因为窗口或浏览器的关闭而消失,除非主动的去删除数据。

localStorage有length属性,可以通过控制台查看其有多少条记录的数据。

var storage = null;
storage.setItem("key","value")   //调用setItem方法存储数据
storage.getItem("key")			//调用getItem方法获取key的值
stroage.removeItem("key")		//删除key对应的值
stroage.clear()				   //清空数据

sessionStorage

sessionStorage的生命周期相比localStorage来说很短,其周期在窗口关闭时结束。也就是说,当浏览器窗口关闭,sessionStorage的使命就已经结束,其保留的数据也会被清除。

sessionStorage也拥有length属性,两者的使用方法也是一致的,但和localstorage比较,仍有一些区别。

页面刷新不会消除已获得的数据

这里我写了两个html文件(test1.html / test2.html)来进行说明:

因为篇幅问题,所以只取了部分需要注意的代码段

这是test1.html的部分代码:

<body>
    <button>跳转按钮</button>
    <div>页面的作用:在 sessionStorage 中存数据</div>
    <script>
        var Data = window.sessionStorage;
        console.log(Data)
        var str = 'sessionData'
        // sessionStorage 存储数据 
        Data.setItem('code',str)
        document.getElementsByTagName('button')[0].onclick = function(){
            window.location.href = './test2.html'
        }
    </script>
</body>

test2.html的部分代码:

<body>
    <div>我是test2页面</div>
    <script>
        
      var sessionData = sessionStorage.getItem('code')
      console.log(sessionData)
      console.log(sessionStorage.getItem('code'))
    </script>
</body>

打开test1页面,可以看见跳转按钮以及一段文字:页面的作用:在 sessionStorage 中存数据;

打开控制器,可以看见已经传入了 code 以及它的值 sessionData;

这时点击跳转按钮,会看见页面刷新,进入test2页面,显示“我是test2页面”

sessionStorage 在test1窗口关闭后;就保存数据了。换一个新的窗口(test2);也不会有数据改变
关闭后不保存数据;是针对整个浏览器来说的
sessionStorage.getItem(key) 获取sessionStorage的数据中value值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值