js cookie设置cookie, 删除cookie, 获取cookie,清空cookie

cookie是什么?

cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。

如果你比较懒, 你可以直接使用LsyCookie.js插件
下载: 点击下载LsyCookie.js

其实cookie还是比较简单的,如果把下面的5个方法弄明白,您的cookie已经学会了一大半

设置cookie

//key为cookie的名称, val为cookie的值, time为过期时间(单位为秒)
function setCookie(key, val, time) {
    if (typeof key !== 'string' || typeof val !== 'string' ) {
        return false;
    }
    time = time || 7 * 24 * 3600;
    var exp = new Date();
    exp.setTime(exp.getTime() + time * 1000);
    document.cookie = key + '=' + val + ';expires=' + exp.toGMTString();
}

获取cookie

	//获取所有的cookies
    function getAllCookies() {
        var cookies = document.cookie.split(/;\s/g);
        var cookieObj = {};
        cookies.forEach(function (item) {
            var key = item.split('=')[0];
            cookieObj[key] = item.split('=')[1];
        });
        return cookieObj;
    }
    //通过key来获取cookie,本方法依赖于getAllCookies()
    function getCookieByKey(key) {
        return getAllCookies()[key];
    }

删除cookie

	//通过key来删除cookie
    function clearCookieByKey(key) {
        setCookie(key, "", -1);
    }
    //清空所有的cookies, 本方法依赖于getAllCookies(),clearCookieByKey(key)
    function clearAllCookies() {
        var keys = Object.keys(getAllCookies());
        keys.forEach(function (item) {
            clearCookieByKey(item);
        });
    }

注意:

cookie的存储长度是有限的,大概在4095个字节,所以不要把所有的信息都用cookie来存储;如果需要存储大量的信息,建议使用localStorage
cookie的存储是需要“服务环境”的,如果您用的webstorm这样的编辑器,直接用就行,如果是sublime,vscode之类的编辑器,恐怕要安装插件来实现

欢迎点赞,谢谢关注 :)

  • 12
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值