封装cookie的添加,删除,查询方法

来源:互联网 发布:mac视频怎么全屏 编辑:程序博客网 时间:2024/03/29 22:09

cookie是存储在浏览器端的,可以用于存储sessionID,也可以用于自动登陆,记住密码等,但是在浏览器端并没有官方的操作cookie的方法,下面我们来封装一下:

CookieUtil={    addCookie:function(key,value,options){        var str=key+"="+escape(value);        if(options.expires){           var curr=new Date();   //options.expires的单位是小时           curr.setTime(curr.getTime()+options.expires*3600*1000);           options.expires=curr.toGMTString();        }        for(var k in options){   //有可能指定了cookie的path,cookie的domain           str+=";"+k+"="+options[k];        }        document.cookie=str;    },    queryCookie:function(key){      var cookies=document.cookie;     //获得浏览器端存储的cookie,格式是key=value;key=value;key=value      cookies+=";";      var start=cookies.indexOf(key);      if(start<=-1){ return null; }  //说明不存在该cookie      var end=cookies.indexOf(";",start);      var value=cookies.slice(start+key.length+1,end);      return unescape(value);    },    deleteCookie:function(key){      var value=CookieUtil.queryCookie(key);      if(value===null){return false;}      CookieUtil.addCookie(key,value,{expires:0});//把过期时间设置为0,浏览器会马上自动帮我们删除cookie    }}

作者:汪汪
链接:https://zhuanlan.zhihu.com/p/22606894
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

0 0