原生JS操作的cookie:
document.cookie 和 docum9ent.title(每次都覆盖前一次的值) 类似
写:
document.cookie='aaa';---只写了value=aaa,没有name; ×
document.cookie='name=aaa'; √
设置path(根路径):
document.cookie='textPath=abc;path=/';
设置expires(过期时间):
一天后过期:
var oDate=new Date();
oDate.setDate(oDate.getDate()+1);
document.cookie='textPath=abc;path=/;expires='+oDate;
一分钟后过期:
var oDate=new Date();
oDate.setMinutes(oDate.getMinutes()+1)
document.cookie='textPath=abc;path=/;expires='+oDate;(相差八小时)
↓
document.cookie='textPath=abc;path=/;expires='+oDate.toUTCString();/oDate.toGMTString();
*封装set:
function setCookie(name,value,iDay){
var str=name+'='+value+';path=/'
if(iDay){
var oDate=new Date();
oDate.setDate(oDate.getDate()+iDay);
str+=';expires='+oDate.toUTCString();
}
document.cookie=str;
}
setCookie('hello',111,2);
删除cookie: setCookie('hello','',-2);
读:
document.cookie---每个cookie之间是用“分号+空格”来分隔的
name=123; test=abc;
获取一个cookie:
例如:
var arr=document.cookie.split('; ');
for(var i=0; i<arr.length; i++){
var arr2=arr[i].split('=');
if(arr2[0]==name){
alert(arr2[1])}
}
网友评论