博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
web 本地存储 (localStorage、sessionStorage)
阅读量:4931 次
发布时间:2019-06-11

本文共 1282 字,大约阅读时间需要 4 分钟。

web 本地存储 (localStorage、sessionStorage)

说明

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

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

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

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 发生变化(增加、更新、删除)时的 触发,同一个页面发生的改变不会触发,只会监听同一域名下其他页面改变 Storage

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浏览器测试)

浏览器查看方法

进入开发者工具

选择 Application

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

Application

 

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

转载于:https://www.cnblogs.com/cowboybusy/p/9040641.html

你可能感兴趣的文章
UDP网络编程
查看>>
[Nuxt] Display Vuex Data Differently in Each Page of Nuxt and Vue.js
查看>>
[Ramda] Curry and Uncurry Functions with Ramda
查看>>
[TypeScript] Function Overloads in Typescript
查看>>
[React] React Fundamentals: Mixins
查看>>
关于SQL数据库 数据库名 表名的一些操作
查看>>
1013. 识别三角形
查看>>
IE8+兼容经验小结
查看>>
Android studio下使用SharedSDK
查看>>
会话与请求
查看>>
hibernate one2many (单向关联)
查看>>
自制反汇编逆向分析工具
查看>>
MS SQLserver数据库安装
查看>>
第2章 数字之魅——斐波那契(Fibonacci)数列
查看>>
Spark集群基于Zookeeper的HA搭建部署笔记(转)
查看>>
Codeforces Round #106
查看>>
vue循环时设置多选框禁用状态,v-for
查看>>
CSS3 2D 转换
查看>>
视觉跟踪入门概念
查看>>
lumen 在AppServiceProvider 使用Illuminate\Support\Facades\Redis 报错
查看>>