前端研习社

JS cookie详解(增删改)

2016-12-02  本文已影响39人  穿越人海遇见你

JavaScript中的一个机制:cookie。可以达到真正全局变量的要求。cookie是浏览器 提供的一种机制,它将document 对象的cookie属性提JavaScript。可以由JavaScript对其进行控制,而并不是JavaScript本身的性质。

构造通用的cookie处理函数:

         cookie的处理过程比较复杂,并具有一定的相似性。因此可以定义几个函数来完成cookie的通用操作,从而实现代码的复用。下面列出了常用的cookie操作及其函数实现。

1.添加一个cookie:addCookie(name,value,expiresHours)

该函数接收3个参数:cookie名称,cookie值,以及在多少小时后过期。这里约定expiresHours为0时不设定过期时间,即当浏览器关闭时cookie自动消失。该函数实现如下:

代码如下:

function  addCookie(name,value,expiresHours){

           var cookieString=name+"="+escape(value);

           //判断是否设置过期时间

          if(expiresHours>0){

                      var date=new Date();

                     date.setTime(date.getTime+expiresHours*3600*1000);

                    cookieString=cookieString+"; expires="+date.toGMTString();

}

        document.cookie=cookieString;

}

2.获取指定名称的cookie值:getCookie(name)

该函数返回名称为name的cookie值,如果不存在则返回空,其实现如下:

代码如下:

function getCookie(name){

           var strCookie=document.cookie;

           var arrCookie=strCookie.split("; ");

            for(var i=0;i<arrCookie.length;i++){

                      var arr=arrCookie[i].split("=");

                      if(arr[0]==name)return arr[1];

}

         return "";

}

3.删除指定名称的cookie:deleteCookie(name)

该函数可以删除指定名称的cookie,其实现如下:

代码如下:

function deleteCookie(name){

             var date=new Date();

            date.setTime(date.getTime()-10000);

           document.cookie=name+"=v; expires="+date.toGMTString();

}

上一篇下一篇

猜你喜欢

热点阅读