浏览器 cookie

Cookie 保存以下几方面的信息:

  • Cookie的名字
  • Cookie的值
  • 到期时间
  • 所属域名(默认是当前域名)
  • 生效的路径(默认是当前网址)
Set-Cookie: name=value[; expires=date][; domain=domain][; path=path][; secure]

Cookie读写

  • 读取Cookie,document.cookie属性返回当前网页的 Cookie:
// 读取当前网页的所有cookie
var allCookies = document.cookie;  //// allCookies = "test1=hello;test2=world"
  • 写入Cookie,document.cookie属性是可写的,可以通过它为当前网站添加Cookie:
document.cookie = 'fontSize=14'; //键值对形式写入Cookie

Cookie的值必须写成key=value的形式。注意,等号两边不能有空格。另外,写入Cookie的时候,必须对分号、逗号和空格进行转义(它们都不允许作为Cookie的值),这可以用encodeURIComponent方法达到。

  • document.cookie一次只能写入一个Cookie,而且写入并不是覆盖,而是添加:
document.cookie = 'test1=hello';
document.cookie = 'test2=world';
document.cookie  // test1=hello;test2=world
  • document.cookie返回的是以分号分隔的所有健值对Cookie值,所以必须手动还原,才能取出每一个Cookie的值。
var cookies = document.cookie.split(';');

for (var i = 0; i < cookies.length; i++) {
  // cookies[i] 值为name=value形式的单个键值对Cookie
}

参考

javascript标准参考教程-阮一峰 http://javascript.ruanyifeng.com/bom/cookie.html

原文地址:https://www.cnblogs.com/ybtools/p/6731935.html