0
点赞
收藏
分享

微信扫一扫

原生js封装cookie

吃面多放酱 2021-09-30 阅读 46
  1. 代码如下:
/* === cookie的封装 === */
// 设置cookie
function setCookie(key,val,ops){
    // 接收配置信息
    ops = ops || {};
    // 处理默认路径
    let path = ops.path ? ";path="+ops.path : "";
    // 处理默认有效期
    let expires = "";
    if(ops.expires){
        let d = new Date();
        d.setDate(d.getDate() + ops.expires);
        expires = ";expires="+d;
    }
    // 设置cookie
    document.cookie = `${key}=${val}${path}${expires}`;
    // document.cookie = "name=root;path:/webServer;expires='有效期'"
}

// 删除cookie
function removeCookie(key,ops){
    ops = ops || {};
    // 日期设为昨天即为失效
    ops.expires = -1;
    setCookie(key,null,ops);
}

// 获取cookie有待完善
function getCookie(key){
    // 获取所有的cookie
    let str = document.cookie;
    // 第一次分割,将每组名字和值分割出来
    let arr = str.split("; ");
    let a = "";
    for(let i=0;i<arr.length;i++){
        // 第二次分割将每个名字和值分割开
        if(arr[i].split("=")[0] === key){
            // 将值返回
            return arr[i].split("=")[1];
        }
    }
    // 如果循环结束没有匹配项就返回空
    return "";
}
/* ===== END ===== */
举报

相关推荐

0 条评论