我自己寫(xiě)的方法:
var cookie = {
setCookie:function (name,value,time) {
document.cookie = name + "=" + value + ";expires=Thu, 18 Dec 2019 12:00:00 GMT"; //分號(hào)后面是設(shè)定cookie失效時(shí)間,如果是過(guò)去的時(shí)間,則cookie無(wú)效,也相當(dāng)于刪除
},
getCookie:function(name){
var cookieStr = document.cookie.replace(/\s+/g,""); //清楚空格
var str = cookieStr.split(";"); //將cookie分割成數(shù)組
console.log(typeof str); //object
for(var i = 0;i < str.length;i++){
var newStr = str[i].split("=");
if(newStr[0] == name){
return newStr[1];
}
}
}
}
cookie.setCookie("jian","tianwen");
cookie.setCookie("name","劍圣");
console.log(cookie.getCookie("name")) //xiao
別人封裝的:
/*
封裝的cookie方法,可以設(shè)置cookie內(nèi)容和時(shí)間
*/
var cookie = {
set:function(key,val,time){//設(shè)置cookie方法
var date=new Date(); //獲取當(dāng)前時(shí)間
var expiresDays=time; //將date設(shè)置為n天以后的時(shí)間
date.setTime(date.getTime()+expiresDays*24*3600*1000); //格式化為cookie識(shí)別的時(shí)間
document.cookie=key + "=" + escape(val) +";expires="+date.toGMTString(); //設(shè)置cookie
},
get:function(key){//獲取cookie方法
/*獲取cookie參數(shù)*/
var getCookie = document.cookie.replace(/[ ]/g,""); //獲取cookie,并且將獲得的cookie格式化,去掉空格字符
var arrCookie = getCookie.split(";") //將獲得的cookie以"分號(hào)"為標(biāo)識(shí) 將cookie保存到arrCookie的數(shù)組中
var tips; //聲明變量tips
for(var i=0;i<arrCookie.length;i++){ //使用for循環(huán)查找cookie中的tips變量
var arr=arrCookie[i].split("="); //將單條cookie用"等號(hào)"為標(biāo)識(shí),將單條cookie保存為arr數(shù)組
if(key==arr[0]){ //匹配變量名稱(chēng),其中arr[0]是指的cookie名稱(chēng),如果該條變量為tips則執(zhí)行判斷語(yǔ)句中的賦值操作
tips=arr[1]; //將cookie的值賦給變量tips
break; //終止for循環(huán)遍歷
}
}
return unescape(tips);
}
}
cookie.set('key','value,中文也可以的',30) //30天后失效
console.log(cookie.get('key')); // value,中文也可以的)