JS 设置cookie、读取cookie、删除cookie
通常浏览器在第一次页面加载时候会帮我们把网站的图片数据等信息缓存下来。当用户在一段时间内重复登陆该网站的时候可以直接引用缓存的信息加快加页面渲染速度,减少服务器压力,大大提高加载速度,提高用户体验。
PS:友情提示,请在服务器环境 下测试,非服务器环境下是没办法的~
(function() {
var isHasCookei = getCookie("haveSave"); // 首先获取cookie
console.log(isHasCookei);// 成功则打印yes
if (!(isHasCookei == "yes")) {
setCookie("haveSave","yes","5000s"); // 如果加载完成就设置一个Cookie,执行一次该步骤
return false
},50);
}else { // Cookie==yes时候执行我们要的
}
function setCookie(name,value,time) { // 设置一个cookie
var strsec = getsec(time);
var exp = new Date();
exp.setTime(exp.getTime() + strsec*1);
document.cookie = name +"="+ value + ";expires=" + exp.toGMTString();
}
function getsec(str) {
var str1=str.substring(1,str.length)*1;
var str2=str.substring(0,1);
if (str2=="s") {
return str1*1000;
}else if (str2=="h") {
return str1*60*60*1000;
}else if (str2=="d") {
return str1*24*60*60*1000;
}
}
function getCookie(name) { //获取一个cookie
var strCookie = document.cookie;
var arr = strCookie.split(';');
for (var i = 0; i < arr.length; i++) {
var t = arr[i].split("=");
if(t[0] == name) {
return t[1];
}
};
return null;
}
function delCookie(name) { //删除一个cookie
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval=getCookie(name);
if(cval!=null)
document.cookie= name +"="+cval+";expires="+exp.toUTCString();
}
})