JS写的cookie类


< script language = " JScript " >
function  Cookie(delim){
    
this ._Cookie = [];
    
this .Load = function (){
        
if (document.cookie.indexOf( " ; " ) !=- 1 ){
            
var  _sp,_name,_tp,_tars,_tarslength;
            
var  _item = document.cookie.split( " " );
            
var  _itemlength = _item.length;
            
while (_itemlength > 0 ){
                _sp
= _item[ -- _itemlength].split( " = " );
                _name
= _sp[ 0 ];
                _tp
= _sp[ 1 ].split( " , " );
                _tars
= _tp.slice( 1 ,_tp.length);
                
this ._Cookie[_name] = [];
                
this ._Cookie[_name] = _tars;
                
this ._Cookie[_name][ " timeout " ] = _tp[ 0 ];
                }
            
return   true ;
            }
        
return   false ;
        }
    
this .Save = function (){
        
var  _str,_ars,_mars,_marslength,timeout,i,key;
        
for (key  in   this ._Cookie){
            
if ( ! this ._Cookie[key]) return ;
            _str
= [];
            _mars
= CookieClass._Cookie[key];
            _marslength
= _mars.length;
            
for (i = 0 ;i < _marslength;i ++ )_str[_str.length] = escape(_mars[i]);
            document.cookie
= key + " = " + _mars[ " timeout " ] + (_str.length > 0 ? " , " : "" ) + _str + (_mars[ " timeout " ] == 0 ? "" : " ;expires= " + new  Date(parseInt(_mars[ " timeout " ])).toGMTString());
            }
        
        }
    
this .GetCookieCount = function (){
        
var  _length = 0 ,key;
        
for (key  in   this ._Cookie)_length ++ ;
        
return  _length;
        }
    
this .Create = function (name,days){
        days
= days ? days: 0 ;
        
if ( ! this ._Cookie[name]) this ._Cookie[name] = [];
        
this ._Cookie[name][ " timeout " ] = days != 0 ? new  Date().getTime() + parseInt(days) * 86400000 : 0 ;
        }
    
this .Modify = function (name,days){
        
this .Create(name,days);
        }
    
this .GetTime = function (name){
        
return   new  Date(parseInt( this ._Cookie[name][ " timeout " ]));
        }
    
this .Delete = function (name){
        
this .Create(name, 0 );
        }
    
this .AddItem = function (name,value){
        
this ._Cookie[name][ this ._Cookie[name].length] = value;
        }
    
this .DelItem = function (name,index){
        
var  _ttime = this ._Cookie[name][ " timeout " ];
        
this ._Cookie[name] = this ._Cookie[name].slice( 0 ,index).concat( this ._Cookie[name].slice(parseInt(index) + 1 , this ._Cookie[name].length));
        
this ._Cookie[name][ " timeout " ] = _ttime;
        }
    
this .GetCount = function (name){
        
return   this ._Cookie[name].length;
        }
    
this .GetItem = function (name,index){
        
return   this ._Cookie[name][index];
        }
    }
</ script >
< script language = " JScript " >
var  CookieClass = new  Cookie();
if ( ! CookieClass.Load()){
    CookieClass.Create(
" Pass " , 1 );
    CookieClass.AddItem(
" Pass " , " Ps1 " );
    CookieClass.AddItem(
" Pass " , " Ps2 " );
    CookieClass.AddItem(
" Pass " , " Ps3 " );
    CookieClass.AddItem(
" Pass " , " Ps4 " );
    CookieClass.DelItem(
" Pass " , 1 );
    CookieClass.Save();
    }
alert(
" Cookie过期时间: " + CookieClass.GetTime( " Pass " ).toLocaleString());
alert(document.cookie);
</ script >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值