js读写cookie相关的代码类封装和函数,并加上中文注释,给出100个实例
创始人
2025-05-30 23:04:56

js读写cookie相关的代码类封装和函数,并加上中文注释,给出100个实例

  1. 设置 cookie
javascript/*** 设置 cookie* @param {string} name cookie 名称* @param {string} value cookie 值* @param {number} days cookie 有效天数*/
function setCookie(name, value, days) {let expires = '';if (days) {let date = new Date();date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));expires = `; expires=${date.toUTCString()}`;}document.cookie = `${name}=${value}${expires}; path=/`;
}
  1. 获取 cookie
javascript/*** 获取 cookie* @param {string} name cookie 名称* @return {string|null} cookie 值,如果不存在则返回 null*/
function getCookie(name) {let cookieName = `${name}=`;let cookieArray = document.cookie.split(';');for (let i = 0; i < cookieArray.length; i++) {let cookie = cookieArray[i].trim();if (cookie.indexOf(cookieName) === 0) {return cookie.substring(cookieName.length, cookie.length);}}return null;
}
  1. 删除 cookie
javascript/*** 删除 cookie* @param {string} name cookie 名称*/
function deleteCookie(name) {document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;
}
  1. 设置 cookie,有效期为 1 小时
javascriptsetCookie('name', 'value', 1/24);
  1. 获取 cookie 名称为 name 的值
javascriptlet value = getCookie('name');
  1. 删除 cookie 名称为 name 的值
javascriptdeleteCookie('name');
  1. 设置 cookie,有效期为 7 天
javascriptsetCookie('name', 'value', 7);
  1. 获取当前域名下所有的 cookie
javascriptlet cookies = document.cookie.split(';');
  1. 获取当前域名下所有的 cookie 名称
javascriptlet cookieNames = cookies.map((cookie) => cookie.split('=')[0].trim());
  1. 获取当前域名下所有的 cookie 值
javascriptlet cookieValues = cookies.map((cookie) => cookie.split('=')[1].trim());
  1. 获取当前域名下所有的 cookie 名称和值
javascriptlet cookieMap = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');cookieMap[name.trim()] = value.trim();
});
  1. 设置 cookie,有效期为 30 分钟
javascriptsetCookie('name', 'value', 1/48);
  1. 获取 cookie 名称为 age 的值
javascriptlet age = parseInt(getCookie('age'));
  1. 删除 cookie 名称为 age 的值
javascriptdeleteCookie('age');
  1. 设置 cookie,有效期为 1 年
javascriptsetCookie('name', 'value', 365);
  1. 获取当前域名下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 获取 cookie 名称为 name 的值,如果不存在则返回默认值
javascriptlet name = getCookie('name') || 'default';
  1. 删除所有 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');deleteCookie(name.trim());
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的路径
javascriptsetCookie('name', 'value', 1/24, '/path');
  1. 获取当前路径下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf('/path') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的路径
javascriptsetCookie('name', 'value', 1/48, '/path');
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);
  1. 删除所有指定路径下的 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');if (cookie.indexOf('/path') !== -1) {deleteCookie(name.trim());}
});
  1. 设置 cookie,有效期为 1 年,作用域为指定的路径
javascriptsetCookie('name', 'value', 365, '/path');
  1. 获取当前路径下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.filter((cookie) => cookie.indexOf('/path') !== -1).map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的域名
javascriptsetCookie('name', 'value', 1/24, '/', '.example.com');
  1. 获取当前域名下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf('.example.com') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的域名
javascriptsetCookie('name', 'value', 1/48, '/', '.example.com');
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);
  1. 删除所有指定域名下的 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');if (cookie.indexOf('.example.com') !== -1) {deleteCookie(name.trim());}
});
  1. 设置 cookie,有效期为 1 年,作用域为指定的域名
javascriptsetCookie('name', 'value', 365, '/', '.example.com');
  1. 获取当前域名下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.filter((cookie) => cookie.indexOf('.example.com') !== -1).map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的子路径
javascriptsetCookie('name', 'value', 1/24, '/path/subpath');
  1. 获取当前子路径下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf('/path/subpath') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的子路径
javascriptsetCookie('name', 'value', 1/48, '/path/subpath');
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);
  1. 删除所有指定子路径下的 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');if (cookie.indexOf('/path/subpath') !== -1) {deleteCookie(name.trim());}
});
  1. 设置 cookie,有效期为 1 年,作用域为指定的子路径
javascriptsetCookie('name', 'value', 365, '/path/subpath');
  1. 获取当前子路径下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.filter((cookie) => cookie.indexOf('/path/subpath') !== -1).map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的子域名
javascriptsetCookie('name', 'value', 1/24, '/', 'subdomain.example.com');
  1. 获取当前子域名下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf('subdomain.example.com') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的子域名
javascriptsetCookie('name', 'value', 1/48, '/', 'subdomain.example.com');
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);
  1. 删除所有指定子域名下的 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');if (cookie.indexOf('subdomain.example.com') !== -1) {deleteCookie(name.trim());}
});
  1. 设置 cookie,有效期为 1 年,作用域为指定的子域名
javascriptsetCookie('name', 'value', 365, '/', 'subdomain.example.com');
  1. 获取当前子域名下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.filter((cookie) => cookie.indexOf('subdomain.example.com') !== -1).map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的端口号
javascriptsetCookie('name', 'value', 1/24, '/', '', 8080);
  1. 获取当前端口号下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf(':8080') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的端口号
javascriptsetCookie('name', 'value', 1/48, '/', '', 8080);
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);
  1. 删除所有指定端口号下的 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');if (cookie.indexOf(':8080') !== -1) {deleteCookie(name.trim());}
});
  1. 设置 cookie,有效期为 1 年,作用域为指定的端口号
javascriptsetCookie('name', 'value', 365, '/', '', 8080);
  1. 获取当前端口号下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.filter((cookie) => cookie.indexOf(':8080') !== -1).map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的协议
javascriptsetCookie('name', 'value', 1/24, '/', '', '', true);
  1. 获取当前协议下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf('https') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的协议
javascriptsetCookie('name', 'value', 1/48, '/', '', '', true);
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);
  1. 删除所有指定协议下的 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');if (cookie.indexOf('https') !== -1) {deleteCookie(name.trim());}
});
  1. 设置 cookie,有效期为 1 年,作用域为指定的协议
javascriptsetCookie('name', 'value', 365, '/', '', '', true);
  1. 获取当前协议下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.filter((cookie) => cookie.indexOf('https') !== -1).map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的域名、路径、子域名、端口号和协议
javascriptsetCookie('name', 'value', 1/24, '/path/subpath', 'subdomain.example.com', 8080, true);
  1. 获取当前作用域下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf('subdomain.example.com') !== -1 && cookie.indexOf('/path/subpath') !== -1 && cookie.indexOf(':8080') !== -1 && cookie.indexOf('https') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的域名、路径、子域名、端口号和协议
javascriptsetCookie('name', 'value', 1/48, '/path/subpath', 'subdomain.example.com', 8080, true);
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);
  1. 删除所有指定作用域下的 cookie
javascriptcookies.forEach((cookie) => {let [name] = cookie.split('=');if (cookie.indexOf('subdomain.example.com') !== -1 && cookie.indexOf('/path/subpath') !== -1 && cookie.indexOf(':8080') !== -1 && cookie.indexOf('https') !== -1) {deleteCookie(name.trim());}
});
  1. 设置 cookie,有效期为 1 ���,作用域为指定的域名、路径、子域名、端口号和协议
javascriptsetCookie('name', 'value', 365, '/path/subpath', 'subdomain.example.com', 8080, true);
  1. 获取当前作用域下所有的 cookie 名称和值的数组
javascriptlet cookieArray = cookies.filter((cookie) => cookie.indexOf('subdomain.example.com') !== -1 && cookie.indexOf('/path/subpath') !== -1 && cookie.indexOf(':8080') !== -1 && cookie.indexOf('https') !== -1).map((cookie) => {let [name, value] = cookie.split('=');return { name: name.trim(), value: value.trim() };
});
  1. 设置 cookie,有效期为 1 小时,作用域为指定的域名、路径、子域名、端口号和协议,并设置 HttpOnly 属性
javascriptsetCookie('name', 'value', 1/24, '/path/subpath', 'subdomain.example.com', 8080, true, true);
  1. 获取当前作用域下所有的 cookie 名称和值的对象
javascriptlet cookieObject = {};
cookies.forEach((cookie) => {let [name, value] = cookie.split('=');if (cookie.indexOf('subdomain.example.com') !== -1 && cookie.indexOf('/path/subpath') !== -1 && cookie.indexOf(':8080') !== -1 && cookie.indexOf('https') !== -1 && cookie.indexOf('HttpOnly') !== -1) {cookieObject[name.trim()] = value.trim();}
});
  1. 设置 cookie,有效期为 30 分钟,作用域为指定的域名、路径、子域名、端口号和协议,并设置 HttpOnly 属性
javascriptsetCookie('name', 'value', 1/48, '/path/subpath', 'subdomain.example.com', 8080, true, true);
  1. 获取 cookie 名称为 age 的值,如果不存在则返回默认值 18
javascriptlet age = parseInt(getCookie('age') || 18);

相关内容

热门资讯

投资者提问:请问董秘,当前中日... 投资者提问:请问董秘,当前中日关系陷入僵局乃至谷底之际,公司有规划更多使用国产光刻胶等材料来替代日系...
富德生命人寿咸阳中心支公司被罚... 12月16日金融一线消息,据咸阳金融监管分局行政处罚信息公开表显示,富德生命人寿保险股份有限公司咸阳...
市场监管总局:抓紧推进出台《互... 转自:北京日报客户端记者16日从市场监管总局获悉,市场监管总局正抓紧推进《互联网平台反垄断合规指引》...
天奇股份:锂电循环业务夯实产业... 12月16日,江西天奇金泰阁集团(简称“天奇金泰阁”)资本赋能发展大会在江西龙南举行。会上,天奇股份...
「侠客岛」他们用上了“AI分身...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会! (来源:海外网)来源...