js 读取 cookie

// 将document.cookie的值以名/值对组成的一个对象返回
// 假设储存cookie的值的时候是采用encodeURIComponent()函数编码的
function getCookie() {
  var cookies = {};  // 初始化最后要返回的对象
  var all = document.cookie;  // 在一个大写字符串中获取所有的cookie值
  if (all === "") {  // 如果该cookie属性值为空字符串
    return cookies;  // 返回一个空对象
  }
  var list = all.split("; ")  // 分离出名/值对
  for(var i = 0; i < list.length; i++) {  // 遍历每个cookie
    var cookie = list[i];
    var p = cookie.indexOf("=");  // 查找第一个“=”符号
    var name = cookie.substring(0,p);  // 获取cookie属性名
    var value = cookie.substring(p+1);  // 获取cookie对应的值
    value = decodeURIComponent(value);  // 对其值进行解码
    cookies[name] = value;  // 将名/值对存储到对象中
  }
  return cookies;
}

标签: