js使用cookie数组传值

JavaScript014

js使用cookie数组传值,第1张

下面是代码示例//赋值给cookiefunction

setcookies(name,value)

{

var

days

=

30

//此

cookie

将被保存

30

var

exp

=

new

date()

//new

date("december

31,

9998")

exp.settime(exp.gettime()

+

days*24*60*60*1000)

document.cookie

=

name

+

"="+

escape(value)

+"expire*="+

**p.togmtstring()

}

//读取cookiefunction

getcookies(name)

{

var

arr

=

document.cookie.match(new

regexp("(^|

)"+name+"=([^]*)(|$)"))

if(arr

!=

null)

return

unescape(arr[2])

return

null

}

//删除cookiefunction

delcookies(name)

{

var

exp

=

new

date()

exp.settime(exp.gettime()

-

1)

var

cval=getcookie(name)

if(cval!=null)

document.cookie=name

+"="+cval+"expire*="+**p.togmtstring()

}

cookie在jquery中有指定的cookie操作类,下面我先来介绍我们在使用cookie操作类时的一些问题,然后介绍正确的使用方法。

使用JQuery操作cookie时 发生取的值不正确的问题:

结果发现cookie有四个不同的属性:

名称,内容,域,路径。

1、获取所有cookie

function getCookies() { 

    var showAllCookie = ''

    if(!document.cookie == ''){ 

        var arrCookie = document.cookie.split(' ') //用spilt(' ')切割所有cookie保存在数组arrCookie中 

        var arrLength = arrCookie.length 

        for(var i=0 i<arrLength i++) { 

        showAllCookie += 'c_name:' + unescape(arrCookie[i].split('=')[0]) + 'c_value:' + unescape(arrCookie[i].split('=')[1]) + '<br>' 9 

    } 

    return showAllCookie 

    } 

}

2、通过名称读取cookie

function getCookie(name) 

    var arr,reg=new RegExp("(^| )"+name+"=([^]*)(|$)")

    if(arr=document.cookie.match(reg))

        return unescape(arr[2]) 

    else 

        return null 

}