1.0.0 • Published 3 years ago

cookiejs123 v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

##设置cookie -参数: +key cookie的属性 +value cookie的属性值 +expires cookie的过期时间 单位分钟

    +key 和value 是必须的
    +expires 可选
        +是否需要写过期时间 需要去判断过期时间是否传递
+返回值:没有返回值
-代码
function setCookie(key, value, expires) {
if (!key || !value) {
    throw Error("key 和value是必须传递的参数");
}

// 如果不设置path路径 这个cookie 只能在当前的文件夹中访问
// path=/ 表示这个cookie设置在根目录下面(这个域名的根目录)
if (!expires) {
    document.cookie = `${key}=${value};path=/`;
    return;
}

let date = new Date();
let time = date.getTime() - 8 * 60 * 60 * 1000 + expires * 60 * 1000;

date.setTime(time);
document.cookie = `${key}=${value};expires=${date};path=/`;

}

##获取cookie -获取cookie +getCookie(); +如果没有传递参数 ,那么把所有的cookie都返回(以对象的形式返回) +如果有参数 把这个参数对应cookie返回

+getCookie()===>{a:1,b:2}
+getCookie('a')===>1
-代码
function getCookie(attr) {
let cookie = document.cookie;
// a=1; b=2; c=3; d=4

let arr = cookie.split('; ');
// ['a=1','b=2','c=3','d=4']

let obj = {};
arr.forEach(item => {
    // item === a=1
    let newArr = item.split('=');
    // newArr = ['a','1']
    obj[newArr[0]] = newArr[1];
})

if (attr) {
    return obj[attr]
}

return obj;

}