web 本地存储 (localStorage、sessionStorage)

web 本地存储 (localStorage、sessionStorage)

说明

对浏览器来讲,使用 Web Storage 存储键值对比存储 Cookie 方式更直观,并且容量更大,它包含两种:localStorage 和 sessionStorageweb

  1. sessionStorage(临时存储) :为每个数据源维持一个存储区域,在浏览器打开期间存在,包括页面从新加载chrome

  2. localStorage(长期存储) :与 sessionStorage 同样,可是浏览器关闭后,数据依然会一直存在api

API

sessionStorage 和 localStorage 的用法基本一致,引用类型的值要转换成JSON浏览器

1. 保存数据到本地

const info = { name: 'Lee', age: 20, id: '001' }; sessionStorage.setItem('key', JSON.stringify(info)); localStorage.setItem('key', JSON.stringify(info));

2. 从本地存储获取数据

var data1 = JSON.parse(sessionStorage.getItem('key')); var data2 = JSON.parse(localStorage.getItem('key'));

 

3. 本地存储中删除某个保存的数据

sessionStorage.removeItem('key'); localStorage.removeItem('key');

4. 删除全部保存的数据

sessionStorage.clear();
    localStorage.clear();

 

5. 监听本地存储的变化

Storage 发生变化(增长、更新、删除)时的 触发,同一个页面发生的改变不会触发,只会监听同一域名下其余页面改变 Storagesession

window.addEventListener('storage', function (e) { console.log('key', e.key); console.log('oldValue', e.oldValue); console.log('newValue', e.newValue); console.log('url', e.url); })
sessionStorage没法监听变动(chrome浏览器测试)
chrome浏览器

浏览器查看方法

进入开发者工具工具

选择 Application测试

在左侧 Storage 下 查看 Local Storage 和 Session Storageui

Application

 

注意Local Storage 和 Session Storage只能存储字符串,好比存储了一个boolean型,值为true,取出来会是字符串"true"url

相关文章
相关标签/搜索