get/set cookies
2017-05-03 本文已影响0人
可爱的木头
cookies 的写入 转化成对象
function setcookie(name,value,daysToLive){
var cookie = name + "=" encodeURIComponent(value);
if(typeof daysToLive === "number"){
cookie += "; max-age=" + (daysToLive*60*60*24);//max-age 设定cookie的有效期
}
document.cookie = cookie;
}
同样地,如果要设置cookie的path、domain、secure属性,只须在存储cookie值前,比如下字符串形式追加在cookie值的后面:
;path = path //路径控制 cookie的传递
;domain = domain //不同的子域之间进行cookie的传递
;secure //布尔类型的属性,用来表明cookie的值以何种形式通过网络传递,cookie默认是以不安全的形式传递的
解析document.cookie属性值
function getcookie(){
var cookie = {};//初始化最后要返回的对象
var all = document.cookie;//在一个大写字符串中获取所有的cookie值
if(all === ""){//如果该cookie属性值为空字符串
return cookie;//返回一个空对象
}
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);//对其进行编码
cookie[name] = value;//将名/值对存储到对象中
}
return cookie;
}