vue-cookie 设置过期时间之关闭浏览器清除 cookie

关于源码对过期时间的判断如下:

if (expires && expires != 0) {
  switch (expires.constructor) {
    case Number:
      if (expires === Infinity || expires === -1) _expires = '; expires=Fri, 31 Dec 9999 23:59:59 GMT';
      else _expires = '; max-age=' + expires;
        break;
    case String:
      if (/^(?:\d+(y|m|d|h|min|s))$/i.test(expires)) {
        // get capture number group
        var _expireTime = expires.replace(/^(\d+)(?:y|m|d|h|min|s)$/i, '$1');
        // get capture type group , to lower case
        switch (expires.replace(/^(?:\d+)(y|m|d|h|min|s)$/i, '$1').toLowerCase()) {
          // Frequency sorting
          case 'm':
            _expires = '; max-age=' + +_expireTime * 2592000;
            break; // 60 * 60 * 24 * 30
          case 'd':
            _expires = '; max-age=' + +_expireTime * 86400;
            break; // 60 * 60 * 24
          case 'h':
            _expires = '; max-age=' + +_expireTime * 3600;
            break; // 60 * 60
          case 'min':
            _expires = '; max-age=' + +_expireTime * 60;
            break; // 60
          case 's':
            _expires = '; max-age=' + _expireTime;
            break;
          case 'y':
            _expires = '; max-age=' + +_expireTime * 31104000;
            break; // 60 * 60 * 24 * 30 * 12
          default:
            new Error('unknown exception of "set operation"');
        }
      } else {
        _expires = '; expires=' + expires;
      }
      break;
    case Date:
      _expires = '; expires=' + expires.toUTCString();
      break;
  }
}

其中有一段:

_expires = '; expires=' + expires;

只需要走到这里就可以使浏览器关闭清除 cookie,所以 expires 的值可以是任意的字符串(如:'a','ab')


小提示

如有侵权请邮件通知