对cookie的设置获取清除操作,封装到一个Cookie对象中

Posted asdfasdfasdad

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对cookie的设置获取清除操作,封装到一个Cookie对象中相关的知识,希望对你有一定的参考价值。

定义Cookie对象

var Cookie = 
    get:function( name ) 
      var value, reg = new RegExp( "(^| )" + name + "=([^;]*)(;|$)" );
      return (value = document.cookie.match( reg )) ? unescape( value[ 2 ] ) : null
    ,
    set:function( name, value, ms ) 
      if ( ms ) 
        var date = new Date();
        date.setTime(date.getTime() + ms);
        document.cookie = name + "=" + encodeURIComponent( value ) + ";path=/;expires=" + date.toGMTString();
       else 
        document.cookie = name + "=" + encodeURIComponent( value ) + ";path=/;";
      
    ,
    clearcookie:function( name ) 
      document.cookie = name + "=;expires=" + new Date( 0 ).toGMTString();
    
  ;

使用cookie

 Cookie.set('name', 'value');// 不设置过期时间

 Cookie.set('name', 'value', ms);// 设置过期时间,单位是毫秒,多少毫秒后过期

 Cookie.get('name');// 获取name的值

note:遇到过一种情况,在设置过期时间时,如果设置的值小于1天的话,在我电脑的多个浏览器上保存不了,同样的代码在其它电脑的浏览器上可以,最后重启一下电脑后可以了,不知道是什么原因?

以上是关于对cookie的设置获取清除操作,封装到一个Cookie对象中的主要内容,如果未能解决你的问题,请参考以下文章

cookies and session

会话过程保存数据对象cookie和session

cookie的设置获取和删除

js封装Cookie操作 js 获取cookie js 设置cookie js 删除cookie

cookie的封装和删除修改

Retrofit 获取、设置cookie