js cookie设置cookie, 删除cookie, 获取cookie,清空cookie
程序员文章站
2024-03-20 14:07:58
...
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
欢迎点赞,谢谢关注 :)
上一篇: EasyExcel导出excel使用教程
下一篇: servlet的Cookie学习