cookie与HTML5的localStorage和sessionStorage
来源:互联网 发布:it技术博客 编辑:程序博客网 时间:2024/05/22 16:52
说这个之前,先说一下本地存储的发展史:
可以看出本地存储出现了好多
作为第一个成熟的本地存储cookie具有很大的意义,它的优点:
1.cookie可以跨越同域名下的多个网页使用
2.cookie可以实现跨页面全局变量
3.同一个网站中所有页面共享一套cookie
4.可以设置有效期限
当然,它也有不少缺点:
1.cookie可能被禁用;
2.cookie与浏览器相关,不能互相访问;
3.cookie可能被用户删除;
4.cookie安全性不够高;
5.cookie存储空间很小(只有4KB左右)
6.cookie操作麻烦,没有方便的API
7.每次操作会随着HTTP请求发送给服务器
所以各大IT行业高层公司开始制定自己的本地存储,比如图片中的userDate、Flash、Gears…
但是他们有他们很大的缺点:必须依赖于自己家的浏览器插件
所以推广不开!
于是新的HTML5解决了这个问题,HTML5的优点:
1.最小5MB,可以申请更大的空间
2.不会随HTTP请求发送给服务器
3.有方便的API操作
4.移动端普及高
5.有localStorage与sessionStorage两种
目前几乎所有的主流浏览器(高版本)都支持HTML5,所以也就支持HTML5的本地存储。
不过,目前cookie并没有绝迹,仍有很多人在使用。
cookie的使用也比较简单,下面是封装的设置和获取cookie的函数,还算比较实用。
设置cookie:
function setCookie(key,val,Days){//设置cookie var dates=new Date();//当前时间对象 dates.setDate(dates.getDate()+Days);//设置有效期 document.cookie=key+'='+escape(val)+'; expires='+dates;}
*escape()是将val进行转码,避免有特殊符号而造成乱码
获取cookie:
function getCookie(key){ var arr=document.cookie.split('; '); for (var i = 0; i < arr.length; i++) { var arr2=arr[i].split('='); if (arr2[0]==key) { return unescape(arr2[1]); }; }; return false;//没有则返回false}
*获取的时候使用unescape()进行解码
好了cookie说完了,接下来是localStorage和sessionStorage:
这两个的区别:
localStorage为永久性保存数据,不会随着浏览器的关闭而消失,可以在同域名跨页访问。
sessionStorage为临时性保存数据,当页面关闭就会消失。其他操作与localStorage一样,不能跨页面访问,它只局限在当前的标签页。
localStrage的各种方法:
1.setItem(key , value),保存或设置数据
如果key已经存在,则覆盖key对应的value
如果不存在则添加key与value
2.getItem(key); 获取key对应的value。
如果key不存在则返回null
3.key(index); 获取指定下标位置的key
4.length 获取localStorage一共有多少条数据
5.clear(); 将同域名下的所有localStorage数据都清空
6.removeItem(‘key’);删除数据,通过key来删除相应的value
7.storage事件:当同源的localStorage有更改以后,其他窗口会触发这个事件。
具体的值有:
key(被增加、删除、修改的数据的key)
oldValue(数据被修改之前的value,如果是数据被增加则为null)
newValue(数据被修改之后的value)
url(修改storage页面的url)
- cookie与HTML5的localStorage和sessionStorage
- cookie 与html5 中的localstorage 与sessionstorage的异同
- 【HTML5】sessionStorage 、localStorage 和 cookie 之间的区别
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- HTMl5的sessionStorage和localStorage
- Python 多线程详解
- 物好价就不能低了吗?网购狂欢盛宴一去不返?
- 第28课:使用提交按钮,提交数据
- 收藏几个算法学习网站
- 用备份进行Active Directory的灾难重建:Active Directory系列之三
- cookie与HTML5的localStorage和sessionStorage
- windows下初始化格式化磁盘
- wifi概念理解
- Leetcode 203. Remove Linked List Elements
- 状态压缩DP入门
- 人脸检测实战①
- 微信热修复tinker使用心得
- Python-Jenkins API
- android开发,从本地选择图片,并显示出来