获取cookie的值。以及删除cookie的值。将其封装为函数。
function getCookie(key){
// 1.获取所有cookie
let strC = document.cookie;
// 2.使用"; "分割所有cookie,单独拿到每一条
let arrC = strC.split("; ");
// 3.遍历每一条cookie
for(var i=0;i<arrC.length;i++){
// 4.再次使用"="分割,分割成名字和值独立的状态
// 5.判断数组的第一位的名字是否与传进来要获取的cookie的名字一致
if(arrC[i].split("=")[0] === key){
// 6.如果一致,返回数组的第二位,也就是对应的值
return arrC[i].split("=")[1];
}
}
// 7.循环结束后没有找到一致的值,那就返回空字符
return "";
}
// 删除cookie
removeCookie("abc",{
path:"/"
});
// 删除cookie
function removeCookie(key,ops){
// 1.保证ops是个对象
ops = ops || {};
// 2.ops是对象了,无论如何得有个expires的属性为-1
ops.expires = -1;
// 3.将处理好的ops,给setCookie
setCookie(key,"随便一个值但不能不写他需要有三个参数",ops);
}
function setCookie(key,val,ops){
ops = ops || {};
let e = "";
if(ops.expires){
var d = new Date();
d.setDate( d.getDate() + ops.expires );
e = ";expires="+d;
}
let p = "";
if(ops.path){
p = ";path="+ops.path;
}
let p = ops.path ? ";path="+ops.path : "";
document.cookie = `${key}=${val}${p}${e}`;
}