【javascript】操作sessionStorage和localStorage

sessionStorage 和 localStorage 都是 Web Storage API 的一部分,它们允许在用户浏览器中存储数据。两者的主要区别在于数据的持久性:

  • sessionStorage 存储的数据在浏览器会话结束时会被清除(即关闭所有属于该域名的标签页)。
  • localStorage 存储的数据则会永久保存,除非用户或代码明确删除。

1、存入数据setItem

使用 setItem 方法来设置数据。数据必须是字符串形式,因此如果要存储对象或数组,需要先转换为字符串,通常使用 JSON.stringify() 方法。

window.sessionStorage.setItem(key, JSON.stringify(obj))
window.localStorage.setItem(key, JSON.stringify(obj))

2、获取数据

使用 getItem 方法来获取数据。如果之前存储的是经过序列化的对象或数组,需要使用 JSON.parse() 方法将字符串转换回原始格式。

let res1 = window.sessionStorage.getItem(key)
JSON.parse(res1)

let res2 = window.localStorage.getItem(key)
JSON.parse(res2)

3、删除数据

使用 removeItem 方法删除特定键的数据,或者使用 clear 方法清空整个存储空间。

window.sessionStorage.removeItem(key)
window.localStorage.removeItem(key)

5、检查是否支持 Web Storage

在某些情况下,Web Storage 可能不可用,例如在无痕模式下或当浏览器不支持 Web Storage 时。可以通过检查 window.sessionStorage 或 window.localStorage 是否可用来进行检测。

if (typeof(Storage) !== "undefined") {
    // 浏览器支持 Web Storage
} else {
    // 浏览器不支持 Web Storage
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值