美文网首页前端研习社
JS cookie详解(增删改)

JS cookie详解(增删改)

作者: 穿越人海遇见你 | 来源:发表于2016-12-02 18:57 被阅读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();

    }

    相关文章

      网友评论

        本文标题:JS cookie详解(增删改)

        本文链接:https://www.haomeiwen.com/subject/fjjqmttx.html