本地存储(cookie\localStorage\sessionStorage)

  1. cookie:
  • 始终在同源http中携带(及时不需要),即在浏览器与服务器之间来回传递,也因此而造成一定的宽带浪费。
  • 有保质期,在有效期前一直有效。
  • 存储数据不超过4K,适用于会话标记,
  • 在同源同窗口中都是共享的,
  • 一般也是由后台获取cookie信息,前台主要存储数据。
    前端语法:
    存储:document.cookie = ‘key=value;expires = GMTString;path=/’;
    说明:1.value值需要转码,encodeURIComponent();
    2.保值期需要时GMT格式的时间
    读取:document.cookie
    说明:获取到的是一个字符串cookie值。多个值以‘;’隔开(eg:‘key=value;value’);
  1. localStorage:
  • 始终有效,即使浏览器关闭了也一直保存,若不需要了,需要手动删除用作持久数据。
  • 存储数据可达到5M。
  • 在同源同窗口中都是共享的。
    语法:
    存储:localStorage.setItem(key,value);
    读取:localStorage.getItem(key);
    删除一条:localStorage.removeItem(key);
    删除所有:localStorage.clear();
    说明:
    存储时,存储的value必须是字符串形式的数据
    读取时,得到的结果也是字符串
  1. sessionStorage:
  • 存储数据仅在浏览器关闭之前有效,存储大小了达到5M,在不同的浏览器窗口中不共享,即使是同一个页面。
    语法:
    存储:sessionStorage.setItem(key,value);
    读取:sessionStorage.getItem(key);
  1. Web Storage与Cookie相比存在优势:
    • 存储空间更大:个各浏览器间略有不同,但都要比Cookie大很多;
    • 存储的内容只会保存到本地,不会传送到后台,从而导致一定的宽带浪费
    • cookie的存储于获取需要自己处理相关的信息,因为没有封装好的Cookie,需要自己封装。
      而Web Storage有封装好的,使用的时候直接用就好(不需要处理相关信息,
      eg:时间格式啊,value转码啊ect);
    • 独立的存储空间,每个域(或子域)都有独立的存储空间,而各个存储空间都是相互独立互不干扰的,所以不会造成数据混乱。
CookieLocalStorageSessionStorage是在Web开发中常用的存储数据的方式。 Cookie是一种存储在用户计算机上的小型文本文件,由服务器通过HTTP响应发送给浏览器,浏览器会将Cookie保存,并在后续的请求中通过HTTP头部发送给服务器。Cookie可以用来存储少量的数据,例如用户的身份认证信息、用户的偏好设置等。由于存储在客户端,因此可以在不同的会话之间持久保存。 LocalStorageSessionStorage是HTML5中新增的Web存储接口,都是在浏览器端进行数据存储的方式,不需要与服务器进行交互。它们使用相似的API,都可以存储大量的数据,并且保存在浏览器的本地环境中。 LocalStorageSessionStorage之间的主要区别在于数据的生命周期和作用域。LocalStorage保存的数据没有过期时间,除非用户手动删除,否则数据会一直保留。而SessionStorage保存的数据只在当前会话中有效,当用户关闭浏览器窗口标签页时,数据会被清除。另外,LocalStorage的数据可以在同一个域名下的不同页面间共享,而SessionStorage的数据只能在同一个页面中共享。 总结: - Cookie是在服务器和浏览器之间传递的存储方式,用于存储少量数据。 - LocalStorageSessionStorage是在浏览器端进行数据存储的方式,可以保存大量数据。 - LocalStorage的数据没有过期时间,而SessionStorage的数据在会话结束时被清除。 - LocalStorage的数据可以在同一个域名下的不同页面间共享,而SessionStorage的数据只在同一个页面中有效。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值