'use strict';
/* cookie操作 */
/** @module cookie */
/**
* 设置cookie
* @param {String} key - cookie对应的key
* @param {String} value - cookie对应的value
* @param {Date} expires - 过期时间
* @notes 在默认情况下,与创建cookie的网页在同一目录或子目录下的所有网页都可以读取该cookie。
*/
function set(key, value, expires) {
let cookieText = '';
cookieText += encodeURIComponent(key) + '=' + encodeURIComponent(value);
if (expires instanceof Date) {
cookieText += ';expires=' + expires.toGMTString();
}
document.cookie = cookieText;
}
/**
* 获取cookie的值
* @param {String} key - cookie对应的key
* @return {String} cookie key对应的value
*/
function get(key) {
let cookieName = encodeURIComponent(key) + '=',
cookieStart = document.cookie.indexOf(cookieName),
cookieValue = '';
if (cookieStart > -1) {
let cookieEnd = document.cookie.indexOf(';', cookieStart);
if (cookieEnd == -1) {
cookieEnd = document.cookie.length;
}
cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd));
}
return cookieValue;
}
/**
* 删除cookie
* @param {String} key - cookie对应的key
*/
function unset(key) {
this.set(key, '', Date(0));
}
export {
set,
get,
unset,
};