浏览器本地储存方式有哪些?cookie、localStorage、sessionStorage
现阶段,浏览器提供的储存方式常用的有三种,cookie、localStorage、sessionStorage
1、cookie
概念:cookie 是浏览器中用于保存少量信息的一个对象
基本特征:
1)以域名为单位的,每个网站的cookie都保存在此网站的域名下,当下一次访问该网站的时候,就可以通过cookie访问保存的消息
2)每个浏览器保存cookie的位置不同,都保存在浏览器内部,可以通过相应的操作查看
3)每个浏览器保存cookie的数量限制不同,一般每个网站下不大于50个,不大于4k。
4)每个网站下的cookie是以分号+空格的形式串联起来的
5)一般直接保存的cookie会在浏览器退出时清空,如果要长期保存,就得设置过期时间,使用expires=Date,卸载设置的cookie后面,使用分号+空格隔开
获取cookie:通过document.cookie可以获取该域名下的所有的cookie组成的字符串,格式为名=值得形式,中间由分号+空格分开,如:“name=张三; age=23”
获取之后使用字符串操作拆分即可得到对应的值
以下是获取cookie的封装方法
//获取cookie的方法
function getCookie(cookieName){
var cookies = document.cookie.split("; ");
for(var i=0; i<cookies.length; i++){
var arr = cookies[i].split("=");
if(arr[0] == cookieName){
return arr[1];
}
}
}
设置cookie:通过document.cookie="名=值"的方式即可设置cookie,例如:document.cookie = "name=张三; expires="+new Date(2017,9);
如果要设置过期时间,就在值后面加 分号+空格+expires=过期时间对象/过期时间字符串。
以下是分装的设置cookie的方法
//设置cookie的方法
function setCookie(key,val,time){ //tiem传入保存的天数 比如说30天过期
var nowTime = new Date(); nowTime.setDate( nowTime.getDate()+time );
//时间有GMT/UTC世界时间和北京时间相差8小时,而浏览器设置的时候是按标准时间设置的,所以需要转化。
document.cookie = key+"="+ val +"; expires="+nowTime.toUTCString();
}
删除cookie相对比较简单,只需要将值清空,并且将过期时间设置为过去即可
封装的删除cookie的方法
//清除cookie,1、讲值清空,2、设置过期时间比现在还早
function deleteCookie(key){
setCookie(key,"",-1);
}
2、localStorage与sessionStorage
特点:
1)localStorage和sessionStorage都具有相同的操作方法
2)localStorage长期存放,sessionStorage浏览器关闭时清空
设置值,使用setItem:
//设置值
localStorage.setItem("name","张三");
sessionStorage.setItem("name","李四");
获取值,使用getItem
localStorage.getItem("name");
sessionStorage.getItem("name");
删除值,使用removeItem
localStorage.removeItem("name");
sessionStorage.removeItem("name");
删除所有的值,使用.clear
localStorage.clear();
sessionStorage.clear();
浏览器本地储存方式有哪些?cookie、localStorage、sessionStorage的更多相关文章
- 大家都能看得懂的源码 - 如何封装 cookie/localStorage/sessionStorage hook?
本文是深入浅出 ahooks 源码系列文章的第九篇,该系列已整理成文档-地址.觉得还不错,给个 star 支持一下哈,Thanks. 今天来看看 ahooks 是怎么封装 cookie/localSt ...
- Cookie localStorage sessionStorage
三者的异同 特性 Cookie localStorage sessionStorage 数据的生命期 可设置失效时间,默认是关闭浏览器后失效 除非被清除,否则永久保存 仅在当前会话下(tab标签页)有 ...
- 浏览器本地数据存储解决方案以及cookie的坑
本地数据存储解决方案以及cookie的坑 问题: cookie过长导致页面打开失败 背景: 在公司的项目中有一个需求是打开多个工单即在同一个页面中打开了多个tab(iframe),但是需要在刷新时只刷 ...
- 本地存储cookie,localStorage,sessionStorage
常见的前端存储有老朋友 cookie,短暂的 sessionStorage,和简单强大的localStorage 他们之间的区别有以下几点 1.. cookie在浏览器和服务器间来回传递.而sessi ...
- cookie, localStorage, sessionStorage区别
cookie 有过期时间,默认是关闭浏览器后失效,4K,兼容ie6,不可跨域,子域名会继承父域名的cookielocalStorage 永不过期,除非手动删除,5M,兼容IE8,不可跨域,子域名不能继 ...
- H5新特性 本地存储---cookie localStorage sessionStorage
本地存储的作用 :避免登录网站时,用户在页面浏览时重复登录,也可以实现快速登录,一段时间内保存用户的登录效果,提高页面访问速率 在html5中提供三种数据持久化操作的方法: 1.cookie 可看作是 ...
- [JavaScript] Cookie,localStorage,sessionStorage概述
Cookie Cookie 是一些数据, 存储于你电脑上的文本文件中,当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息.Cookie 的作用就是存储 web 页面 ...
- 封装cookie localStorage sessionStorage
var cookie = function(name, value, options) { if (typeof value !== 'undefined') { options = options ...
- localStorage sessionStorage 和cookie等前端存储方式总结
localStorage sessionStorage 和cookie localStorage localStorage是本地存储的,除非清空本地数据 localStorage不会自动把数据发给服务 ...
随机推荐
- Oracle的登陆问题和初级学习增删改查(省略安装和卸载)
1:学习Oracle首先需要安装Oracle,网上已经有很多很多教程了,这里不做叙述,自己百度即可,这里安装的标准版,个人根据需求安装学习或者企业开发即可.如果安装出错,自己百度Oracle的卸载即可 ...
- 短路运算|字符串操作函数|内存mem操作函数
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...
- (知识点)JavaScript原型和原型链
〇 每个函数都拥有prototype属性,而该属性所储存的就是原型对象 1)原型属性—— 上面我们测试了foo()函数的 1) length属性(length属性除了可以用在数组中,还可以用于记录函数 ...
- Java中的多线程Demo
一.关于Java多线程中的一些概念 1.1 线程基本概念 从JDK1.5开始,Java提供了3中方式来创建.启动多线程: 方式一(不推荐).通过继承Thread类来创建线程类,重写run()方法作为线 ...
- 为什么说B+-tree比B 树更适合实际应用中操作系统的文件索引和数据库索引?
B树: B+树 1) B+-tree的磁盘读写代价更低 B+-tree的内部结点并没有指向关键字具体信息的指针.因此其内部结点相对B 树更小.如果把所有同一内部结点的关键字存放在同一盘块中,那么盘块所 ...
- Vue 项目实战系列 (二)
上一章节我们已经把项目的初始化工作完成了,接下来我们再来进行具体的代码编写.这一节我们将完成如下的页面. 我们在src/目录下新建一个views文件夹,存放我们的主要页面文件.目录结构如下: cine ...
- CAShapeLayer+CADisplayLink 波浪动画
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #1e9421 } p.p2 { margin: 0.0px 0. ...
- 关于echarts的那些事(地图标点,折线图,饼图)
前记:离上一篇博客的发布已经过去两个月了,这期间总想写点什么,却怎么都写不出来,一直拖到了现在.现在的感觉,不是像这期间一样,想好好整理一番,写一篇好博客,却写不出来.事实发现,随心就好,较好的博客, ...
- Adline网络的LMS算法与梯度下降
LMS算法,即为最小均方差,求的是误差的平方和最小. 利用梯度下降,所谓的梯度下降,本质上就是利用导数的性质来求极值点的位置,导数在这个的附近,一边是大于零,一边又是小于零的,如此而已... 而这个里 ...
- 开启MongoDB客户端访问控制
参考官方文档:https://docs.mongodb.org/v2.6/tutorial/enable-authentication/ 基于版本:MongoDB 2.6 概览 在MongoDB数据实 ...