cookie的有效时间设置
cookie的设置以及cookie的获取提取使用
设置cookie
代码区域:
// setCookie("user","xietian"); //设置cookie,左参时name,右参是value
// setCookie("ids","10023",date); //设置cookie,左是name,中时value,右是有效期
// setCookie("arr",JSON.stringify([1,2,3,4,5])); //设置的数值类型的coolie
// setCookie("list",JSON.stringify([ //设置...
// {id:10001,name:"a"},
// {id:10002,name:"b"},
// {id:10003,name:"c"},
// {id:10004,name:"d"}
// ]))
// console.log(document.cookie);
var obj=getCookie(); //获取cookie
console.log(obj.user);
function setCookie(key,value,expiresDate){ //设置
if(!expiresDate){ //有效期为非,就是不存在的时候
document.cookie=key+"="+value; //设置 只有name和value的cookie
return; //跳出函数 不执行下一步 (这里利用了return提到了else)
}
document.cookie=key+"="+value+";expires="+expiresDate.toUTCString(); //有效期存在的执行这条语句
}
获取cookie
步骤1:
获得 切割后的结果
步骤2:
整体代码:设置与获取 (记)
// setCookie("user","xietian"); //设置cookie,左参时name,右参是value
// setCookie("ids","10023",date); //设置cookie,左是name,中时value,右是有效期
// setCookie("arr",JSON.stringify([1,2,3,4,5])); //设置的数值类型的coolie
// setCookie("list",JSON.stringify([ //设置...
// {id:10001,name:"a"},
// {id:10002,name:"b"},
// {id:10003,name:"c"},
// {id:10004,name:"d"}
// ]))
// console.log(document.cookie);
var obj=getCookie(); //获取cookie
console.log(obj.user);
function setCookie(key,value,expiresDate){ //设置
if(!expiresDate){ //有效期为非,就是不存在的时候
document.cookie=key+"="+value; //设置 只有name和value的cookie
return; //跳出函数 不执行下一步 (这里利用了return提到了else)
}
document.cookie=key+"="+value+";expires="+expiresDate.toUTCString(); //有效期存在的执行这条语句
}
function getCookie(){ //获取
var obj={}; //obj赋值空对象
var arr=document.cookie.split(/;\s?/); //获取cookie,利用split截取以为 ;切割,\s是空字符串,?有或者没有,通过正则表达式获取对应的
for(var i=0;i<arr.length;i++){ //循环数组,
var arr1=arr[i].split("="); //arr的第i项目,以= 截取转为数组
try{ //这个是之前学过的,表示试试,试试,如果能用就用,不能就换成其他的
obj[arr1[0]]=JSON.parse(arr1[1]); //try{ } 如果行就进行,不行就换下行代码执行,try{} 替代了if判断
//转为数组,这里注意,并不是所有的都已转换,只有中括号,花括号,我们可以利用JSON 进行转换
//arr1[0] 是obj的属性名,arr1[1]是属性值
}catch(e){ //转换不成功时就直接赋值就可以了
obj[arr1[0]]=arr1[1];
}
}
return obj;
}