Cookie, LocalStorage 与 SessionStorage

  1. Cookie, LocalStorage 与 SessionStorage相同点

    • 都是储存在用户本地的数据。
    • 意义在于避免数据在浏览器和服务器间不必要地来回传递。

  2. 三者的特点

    同属于html5中的Web Storage
特性 Cookie localStorage sessionStorage
数据的生命期 可设置失效时间,默认是关闭浏览器后失效 除非被清除,否则永久保存 仅在当前会话下有效,关闭浏览器后被清除
存放数据大小 4K/个文件*最多20个 >5MB/站点 >5MB/站点
与服务器端通信 每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题 仅在客户端(即浏览器)中保存,不参与和服务器的通信 仅在客户端(即浏览器)中保存,不参与和服务器的通信
易用性 需要程序员自己封装,源生的Cookie接口不友好 源生接口可以接受,亦可再次封装来对Object和Array有更好的支持 源生接口可以接受,亦可再次封装来对Object和Array有更好的支持
数据的可访问性 不同浏览器、不同窗口中都是共享的 同一个浏览器、同站点不同窗口中可以共享 仅同一个页面窗口中才能共享
常用于 记住密码、   购物车缓存
  • web storage和cookie的区别

Web Storage的概念和cookie相似,区别是它是为了更大容量存储设计的。Cookie的大小是受限的,并且每次你请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽,另外cookie还需要指定作用域,不可以跨域调用。
除此之外,Web Storage拥有setItem,getItem,removeItem,clear等方法,不像cookie需要前端开发者自己封装setCookie,getCookie。

webstorage的浏览器支持如下:

实践上可这样切换使用:

var strStoreDate = window.localStorage? localStorage.getItem("menuTitle"): Cookie.read("menuTitle");    
  • Cookie

  Cookie分2种。当浏览器运行时,Cookie 可存储在 RAM 中发挥作用 (此种 Cookies 称作 Session Cookies),一旦用户从该网站或服务器退出,Cookie 可存储在用户本地的硬盘上 (此种 Cookies 称作 Persistent Cookies)。

  当 Web 服务器创建了Cookies 后,只要在其有效期内,当用户访问同一个 Web 服务器时,浏览器首先要检查本地的Cookies,并将其原样发送给 Web 服务器。所以  Cookie的内容应该少而精

  某些浏览器用户可能禁用cookie。

  查看某个网站颁发的Cookie很简单。在浏览器地址栏输入JavaScript:alert (document. cookie)就可以了。

  详细的cookie参见http://blog.csdn.net/fangaoxin/article/details/6952954/

  • localStorage

  localStorage 方法存储的数据没有时间限制。第二天、第二周或下一年之后,数据依然可用。

  同一站点共用一份5M的localStorage,储存在浏览器的sqLite中,通过window.localStorage对象访问。

  localStorage储存的是键值对(类似于字典)值必须以字符串格式来存入(数组可以直接存,对象要用json格式存,最后读出来都是字符串)。

  创建、读取localStorage:

<script type="text/javascript">

var num=[1,2,3,4];
localStorage.numlist=num;//lastname字段必须唯一,同一站点页面根据相同的名字可覆盖你的值
document.write(localStorage.numlist);// ,输出 1,2,3,4 因为localStorage是以字符串来储存
</script>

localStorage教程参见:http://www.zhangxinxu.com/wordpress/?p=1952

  • SessionStorage

类似localStorage,键值对存储。

区别在于仅存在于同一个页面中,页面关闭再打开依然存在,但当浏览器窗口关闭就失效。

通过window.sessionStorage对象访问。



参考:

http://www.jb51.net/html5/144597.html

http://www.w3school.com.cn/html5/html_5_webstorage.asp

时间: 2024-10-29 19:05:55

Cookie, LocalStorage 与 SessionStorage的相关文章

Cookie, LocalStorage 与 SessionStorage说明

 一.Cookie    Cookie 大小限制为4KB左右,不适合大量数据的存储.因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不高.它的主要用途有保存登录信息,比如你登录某个网站市场可以看到"记住密码",这通常就是通过在 Cookie 中存入一段辨别用户身份的数据来实现的. HttpCookie cookie = new HttpCookie("MyCookieName", "string value"); Re

cookie localStorage与sessionStorage的使用及区别

cookie是储存在用户本地终端上的数据,意思就是能把用户的一些文字信息储存下来,但是cookie的储存空间特别小,一个浏览器能创建的 Cookie 数量最多为 300 个,并且每个不能超过 4KB,每个 Web 站点能设置的 Cookie 总数不能超过 20 个,因此现在越来越少的人使用cookie了,下面讲解一下cookie的用法吧,在使用cookie的时候我们需要先设置cookie p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px C

深入了解浏览器存储:对比Cookie、LocalStorage、sessionStorage与IndexedDB

摘要: 对比Cookie.LocalStorage.sessionStorage与IndexedDB 作者:浪里行舟 Fundebug经授权转载,版权归原作者所有. 前言 随着移动网络的发展与演化,我们手机上现在除了有原生 App,还能跑"WebApp"--它即开即用,用完即走.一个优秀的 WebApp 甚至可以拥有和原生 App 媲美的功能和体验.WebApp 优异的性能表现,有一部分原因要归功于浏览器存储技术的提升.cookie存储数据的功能已经很难满足开发所需,逐渐被WebSto

localstorage、 sessionstorage、 cookie|刘景照的博客

客户端常用的存储方式有三种: localstorage sessionstorage cookie localStorage和sessionStorage localStorage localStorage 没有时间限制的数据存储,也就是说, localStorage是永远不会过期的,除非主动删除数据. 数据可跨越多个窗口,无视当前会话,在同一个域中 被共同访问.使用. localStorage.myName = 'liujingzhao'; localStorage['myName'] = '

cookie、session、localStorage、sessionStorage区别

cookie.session 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份. 本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session. cookie 1.1  Cookie机制 在程序中,会话跟踪是很重要的事情.理论上,一个用户的所有请求操作都应该属于同一个会话

cookie、session、localStorage、sessionStorage

(1)cookie 是一种早期的客户端存储机制.适合存储少量文本数据(部分浏览器任然对单个cookie有4KB限制).不仅如此,任何以cookie形式存储的数据,不论服务器端是否需要,每一次HTTP请求都会把这些数据传输到服务器. Cookie默认的有效期很短暂,只能维持在web浏览器的会话期间,一旦用户关闭浏览器,数据丢失.Cookie的作用域并不局限在浏览器的单个窗口中,而是在整个浏览器进程,与有效期一致.Cookie的作用域是通过文档源和文档路径确定的(domain.path),来自同一个

浏览器本地储存方式有哪些?cookie、localStorage、sessionStorage

现阶段,浏览器提供的储存方式常用的有三种,cookie.localStorage.sessionStorage 1.cookie 概念:cookie 是浏览器中用于保存少量信息的一个对象 基本特征: 1)以域名为单位的,每个网站的cookie都保存在此网站的域名下,当下一次访问该网站的时候,就可以通过cookie访问保存的消息 2)每个浏览器保存cookie的位置不同,都保存在浏览器内部,可以通过相应的操作查看 3)每个浏览器保存cookie的数量限制不同,一般每个网站下不大于50个,不大于4k

cookie 与html5 中的localstorage 与sessionstorage的异同

Cookie的大小是受限的,并且每次你请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽,另外cookie还需要指定作用 域,不可以跨域调用. Web Storage拥有setItem,getItem,removeItem,clear等方法,操作简单 不像cookie需要前端开发者自己封装setCookie,getCookie. Cookie的作用是与服务器进行交互,作为HTTP规范的一部分而存在 而Web Storage仅仅是为了在本地"存储"数据而生 local

解读cookie,localstorage,sessionstorage用法与区别2(解读cookie)

说到本地存储 HTML5 提供了两种在客户端存储数据的新方法: localStorage - 永久存储(可以手动删除数据) sessionStorage - session临时回话,从页面打开到页面关闭的时间段 窗口的临时存储,页面关闭,本地存储消失 其实前景和作用和cookie也是相同甚至从cookie演变而来,用一张图来表示服务商对本地存储的探索. 由图就可以看出本地存储的和cookie的区别,存储大且无插件. 这时也许就该思考H5的最大问题兼容性,这是本地存储支持情况图. 检测: if(w