cookie是浏览器的一种缓存机制,根据不同的浏览器存在于本地文件,例如chrome的本地路径为:
C:\Users\zws\AppData\Local\Google\Chrome\User Data\Default\Cookies (其中zws对应你的用户名)
cookie可以真正做到js的全局变量,应用比如保存登录信息,购物车信息,网页主题保存等...
- cookie存储方式以名-值对形式,如:document.cookie="user=zws";(多对时以分号隔开)
- 可以为cookie设置过期 时间,在名值对后面加上“expires=CMT时间”,删除的时候设置的时候为过去GMT时间即可
- 获取cookie的值可以利用数组array中的split(";")方法,或者通过正则表达式RegExp()方式获取
- cookie的名值中不允许出现“,”"="或者空格,需要用escape()进行编码,另外用unescape()进行解码
1.添加cookie代码:
function addCookie(name,value,expiresHours){
var cookieString = name+"="+escape(value);
if(expiresHours>0){
var date=new Date();
date.setTime(date.getTime()+expiresHours*3600*1000);
cookieString=cookieString+";expires="+date.toGMTString();
}
document.cookie=cookieString;
}
2.获取cookie代码
function getCookie(name){
var strCookie=document.cookie;
var arrCookie=strCookie.split(';');
for(var i=0;i<arrCookie.length;i++){
var arr=arrCookie[i].split('=');
if(arr[0]===name){
return unescape(arr[1]);
}
}
return "";
// var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
// if(arr != null) return (arr[2]); return null;
}
3.删除cookie代码
function delCookie(name){
var date=new Date();
date.setTime(date.getTime()-10000);
document.cookie=name+"=v;expires="+date.toGMTString();
}