cookie的封装与使用

来源:互联网 发布:如何申请手机淘宝店铺 编辑:程序博客网 时间:2024/06/04 22:43

cookie一般使用在用户登录时保存用户的信息,它的内存空间非常小只用有4kb的空间,早期的存贮一般都是用的cookie来存贮数据
关于cookie我们在使用的时候回设置以 秒 小时 天 等不同的时间单位,通过getsec(str) 个方法我们可以传s7 d7 h4 等不同时间单位

var Cookie = {        setCookie: function(key, val, time) { //设置cookie方法 ,过期日期的时间            var strsec = getsec(time);            var exp = new Date();//获取当前时间              exp.setTime(exp.getTime() + strsec * 1);            document.cookie = key + "=" + val + ";expires=" + exp.toGMTString(); //设置cookie         },        getCookie: function(key) { //获取cookie方法              /*获取cookie参数*/            var cookies = document.cookie.replace(/[ ]/g, ""); //获取cookie,并且将获得的cookie格式化,去掉空格字符              var arrCookie = cookies.split(";") //将获得的cookie以"分号"为标识 将cookie保存到arrCookie的数组中              var tips; //声明变量tips              for(var i = 0; i < arrCookie.length; i++) { //使用for循环查找cookie中的tips变量                  var arr = arrCookie[i].split("="); //将单条cookie用"等号"为标识,将单条cookie保存为arr数组                  if(key == arr[0]) { //匹配变量名称,其中arr[0]是指的cookie名称,如果该条变量为tips则执行判断语句中的赋值操作                      tips = arr[1]; //将cookie的值赋给变量tips                      break; //终止for循环遍历                  }            }            return tips;        },        deleteCookie: function(key) { //删除cookie方法              var date = new Date(); //获取当前时间              date.setTime(date.getTime() - 10000); //将date设置为过去的时间              document.cookie = key + "=v; expires =" + date.toGMTString(); //设置cookie          }};function getsec(str) {    var str1 = str.substring(1, str.length) * 1;    var str2 = str.substring(0, 1);    if(str2 == "s") {        return str1 * 1000;    } else if(str2 == "h") {        return str1 * 60 * 60 * 1000;    } else if(str2 == "d") {        return str1 * 24 * 60 * 60 * 1000;    }}//调用方法示例:设置cookie:  Cookie.setCookie("name","sxy",'s6');获取cookie:  Cookie.getCookie("name");删除cookie:  Cookie.deleteCookie("name");//注:在测试的时候,我们在控制台上看cookie如果cookie在过期日期内还存在,记住在cookie上右键点击refresh刷新就可以看到数据消失;## 本地存贮的用法 ##    sessionStrage: session即会话的意思,在这里的session是指用户浏览某个网站时,当页面关闭的时候,这个会话就会结束,数据就会消失;       localStorage: 将数据保存在客户端硬件设备上,除非自己手动移除数据,否则数据会一直存在页面中。    localStorage.getItem(key):获取指定key本地存储的值    localStorage.setItem(key,value):将value存储到key字段    localStorage.removeItem(key):删除指定key本地存储的值在使用本地存贮的时候会有兼容的问题:需要考虑浏览器是否支持兼容    if (window.localStorage) {        // 针对 localStorage/sessionStorage 的代码    } else {        // 抱歉!不支持 Web Storage ..    }
原创粉丝点击