UNPKG

@cainiaofe/cn-utils

Version:

菜鸟前端基础工具库

56 lines (55 loc) 1.96 kB
/** * Cookie操作函数 */ var Cookie = /** @class */ (function () { function Cookie() { } /** * 获取Cookie * @param {cookie} name cookie名称 */ Cookie.get = function (name) { // 注意对键编码 var cookieName = "".concat(encodeURIComponent(name), "="); var cookieStart = document.cookie.indexOf(cookieName); var cookieValue = ''; var cookieEnd; // 找到cookie键 if (cookieStart > -1) { // 键后面第一个分号位置 cookieEnd = document.cookie.indexOf(';', cookieStart); if (cookieEnd === -1) { cookieEnd = document.cookie.length; } // cookie值解码 cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd)); } return cookieValue; }; /** * 设置Cookie * @param {String} name cookie名称 * @param {String} value cookie值 * @param {String} option cookie配置项 */ Cookie.set = function (name, value, option) { if (option === void 0) { option = {}; } // document.cookie = "key=value; path=path; domain=domain; max-age=max-age-in-seconds; expires=date-in-GMTString-format"; var path = option.path, expires = option.expires, domain = option.domain; var cookieText = "".concat(encodeURIComponent(name), "=").concat(encodeURIComponent(value)); // @ts-ignore cookieText += expires ? "; expires=".concat(expires.toGMTString()) : ''; cookieText += path ? "; path=".concat(path) : ''; cookieText += domain ? "; domain=".concat(domain) : ''; document.cookie = cookieText; }; /** * 清除cookie * @param {any} name cookie名称 */ Cookie.clear = function (name) { this.set(name, '', { expires: new Date(0) }); }; return Cookie; }()); export var cookie = Cookie;