详解vue中localStorage的使用方法


Posted in Javascript onNovember 22, 2018

什么是localStorage

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

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

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

所以上次使用cookie的时候就遇到了一个坑,设置后马上访问session会获取不到,蛋疼,还需要刷新一下,原因是:

当我们首次访问设置Cookie的页面时,服务器会把设置的Cookie值通过响应头发送过来,告诉浏览器将cookie存储的本地相应文件夹中(注意:第一次访问时本地还没有存储Cookie,所以此时获取不到值);

当第二次访问(或在进行cookie设置后,过期前所有的访问)时,请求头信息你中都会把Cookie值携带。(百度到的,暂时还没理解透彻,先搬过来).

vue中实现本地储存的方法:localStorage,在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。

(1).储存数据

localStorage.setItem('accessToken', 'Bearer ' + response.data.result.accessToken)

(2).取出数据

localStorage.getItem('accessToken')

(3).删除储存数据

localStorage.removeItem('accessToken')

(4).更改数据

localStorage.setItem('accessToken', '更改后' + response.data.result.accessToken)

使用时有两点需要注意过的地方:

. localStorage在浏览器的隐私模式下面是不可读取的。
. localStorage本质上是对字符串的读取,有json格式时需要JSON.stringify()转化为字符串。
. localStorage不能被爬虫抓取到

注意点

  • localStorage有效期是永久的。一般的浏览器能存储的是5MB左右。sessionStorage api与localStorage相同。
  • sessionStorage默认的有效期是浏览器的会话时间(也就是说标签页关闭后就消失了)。
  • localStorage作用域是协议、主机名、端口。(理论上,不人为的删除,一直存在设备中)
  • sessionStorage作用域是窗口、协议、主机名、端口。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
chrome浏览器不支持onmouseleave事件的解决技巧
May 31 Javascript
jquery按回车提交数据的代码示例
Nov 05 Javascript
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
Jan 02 Javascript
jQuery避免$符和其他JS库冲突的方法对比
Feb 20 Javascript
使用JavaScript 编写简单计算器
Nov 24 Javascript
JAVASCRIPT代码编写俄罗斯方块网页版
Nov 26 Javascript
浅谈javascript 函数表达式和函数声明的区别
Jan 05 Javascript
JS获取字符串实际长度(包含汉字)的简单方法
Aug 11 Javascript
基于jQuery实现的打字机效果
Jan 16 Javascript
使用JS中的Replace()方法遇到的问题小结
Oct 20 Javascript
微信小程序js文件改变参数并在视图上及时更新【推荐】
Jun 11 Javascript
JS实现拼图游戏
Jan 29 Javascript
微信小程序功能之全屏滚动效果的实现代码
Nov 22 #Javascript
layer弹出子iframe层父子页面传值的实现方法
Nov 22 #Javascript
js操作table中tr的顺序实现上移下移一行的效果
Nov 22 #Javascript
从源码里了解vue中的nextTick的使用
Nov 22 #Javascript
Vue动态加载异步组件的方法
Nov 21 #Javascript
微信小程序局部刷新触发整页刷新效果的实现代码
Nov 21 #Javascript
跨域解决之JSONP和CORS的详细介绍
Nov 21 #Javascript
You might like
DOTA2 6.87版本后新眼位详解攻略
2020/04/20 DOTA
晶体管来复再生式二管收音机
2021/03/02 无线电
WebQQ最新登陆协议的用法
2014/12/22 PHP
php post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
php mysql操作mysql_connect连接数据库实例详解
2016/12/26 PHP
jQuery 使用手册(一)
2009/09/23 Javascript
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
2012/11/11 Javascript
jquery单选框radio绑定click事件实现方法
2015/01/14 Javascript
javascript实现数独解法
2015/03/14 Javascript
纯css实现窗户玻璃雨滴逼真效果
2015/08/23 Javascript
JavaScript设置、获取、清除单值和多值cookie的方法
2015/11/17 Javascript
jQuery简单创建节点的方法
2016/09/09 Javascript
功能强大的jquery.validate表单验证插件
2016/11/07 Javascript
JS实现的二叉树算法完整实例
2017/04/06 Javascript
gulp解决跨域的配置文件问题
2017/06/08 Javascript
微信小程序 动画的简单实例
2017/10/12 Javascript
JS实现贪吃蛇游戏
2019/11/15 Javascript
vue2.0实现列表数据增加和删除
2020/06/17 Javascript
element日历calendar组件上月、今天、下月、日历块点击事件及模板源码
2020/07/27 Javascript
不可错过的十本Python好书
2017/07/06 Python
Python 十六进制整数与ASCii编码字符串相互转换方法
2018/07/09 Python
解决python中用matplotlib画多幅图时出现图形部分重叠的问题
2019/07/07 Python
使用python将多个excel文件合并到同一个文件的方法
2019/07/09 Python
Python绘制二维曲线的日常应用详解
2019/12/04 Python
Python实现AI自动抠图实例解析
2020/03/05 Python
Pycharm pyuic5实现将ui文件转为py文件,让UI界面成功显示
2020/04/08 Python
VSCODE配置Markdown及Markdown基础语法详解
2021/01/19 Python
美国精品家居用品网站:US-Mattress
2016/08/24 全球购物
大学生四个方面的自我评价
2013/09/19 职场文书
授权委托书(法人单位用)
2014/09/29 职场文书
嘉宾邀请函
2015/01/31 职场文书
开天辟地观后感
2015/06/09 职场文书
婚宴父母致辞
2015/07/27 职场文书
Ajax实现局部刷新的方法实例
2021/03/31 Javascript
redis requires ruby version2.2.2的解决方案
2021/07/15 Redis
Go语言的协程上下文的几个方法和用法
2022/04/11 Golang