document cookie关于 js 中 document.cookie 设置 expires 的问题

document cookie  时间:2022-03-01  阅读:()

关于 js 中 document.cookie 设置 expires 的问题

vaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的。<br>而cookie是运行在客户端的,所以可以用JS来设置cookie.<br>假设有这样一种情况,在某个用例流程中,由A页面跳至B页面,若在A页面中采用JS用变量temp保存了某一变量的值,在B页面的时候,同样需要使用JS来引用temp的变量值,对于JS中的全局变量或者静态变量的生命周期是有限的,当发生页面跳转或者页面关闭的时候,这些变量的值会重新载入,即没有达到保存的效果。解决这个问题的最好的方案是采用cookie来保存该变量的值,那么如何来设置和读取cookie呢?<br>首先需要稍微了解一下cookie的结构,简单地说:cookie是以键值对的形式保存的,即key=value的格式。各个cookie之间一般是以“;”分隔。<br>JS设置cookie:<br>假设在A页面中要保存变量username的值("jack")到cookie中,key值为name,则相应的JS代码为:<br>复制代码代码如下:<br><br>document.cookie="name="+username;<br><br>JS读取cookie:<br>假设cookie中存储的内容为:name=jack;password=123<br>则在B页面中获取变量username的值的JS代码如下:<br>var username=document.cookie.split(";")[0].split("=")[1];//JS操作cookies方法!//写cookiesfunction setCookie(name,value){var Days = 30;var exp = new Date();exp.setTime(exp.getTime() + Days*24*60*60*1000);document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();}<br><br>读取cookies<br>function getCookie(name){var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");if(arr=document.cookie.match(reg))return unescape(arr[2]);elsereturn null;}<br><br>删除cookies function delCookie(name){var exp = new Date();exp.setTime(exp.getTime() - 1);var cval=getCookie(name);if(cval!=null)document.cookie= name + "="+cval+";expires="+exp.toGMTString();}//使用示例setCookie("name","hayden");alert(getCookie("name"));//如果需要设定自定义过期时间//那么把上面的setCookie 函数换成下面两个函数就ok;//程序代码function setCookie(name,value,time){var strsec = getsec(time);var exp = new Date();exp.setTime(exp.getTime() + strsec*1);document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();}function getsec(str){alert(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;}}//这是有设定过期时间的使用示例://s20是代表20秒//h是指小时,如12小时则是:h12//d是天数,30天则:d30setCookie("name","hayden","s20");

[6.18]DogYun:充100送10元,态云7折,经典云8折,独立服务器月省100元,幸运大转盘最高5折

DogYun是一家2019年成立的国人主机商,提供VPS和独立服务器租用等,数据中心包括中国香港、美国洛杉矶、日本、韩国、德国、荷兰等,其中VPS包括常规VPS(经典云)和按小时计费VPS(动态云),使用自行开发的面板和管理系统,支持自定义配置,动态云各个硬件独立按小时计费,带宽按照用户使用量计费(不使用不计费)或者购买流量包,线路也可以自行切换。目前商家发布了6.18促销方案,新购动态云7折,经...

CUBECLOUD:香港服务器、洛杉矶服务器、全场88折,69元/月

CUBECLOUD(魔方云)成立于2016年,亚太互联网络信息中心(APNIC)会员,全线产品均为完全自营,专业数据灾备冗余,全部产品均为SSD阵列,精品网络CN2(GIA) CU(10099VIP)接入,与当今主流云计算解决方案保持同步,为企业以及开发者用户实现灵活弹性自动化的基础设施。【夏日特促】全场产品88折优惠码:Summer_2021时间:2021年8月1日 — 2021年8月8日香港C...

RackNerd 黑色星期五5款年付套餐

RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...

document cookie为你推荐
技术文档管理如何做好技术管理嵌入式开发嵌入式软件开发在三年后的就业前景如何?网页图标网站ICO图标若想全部添加到网页中,有什么简便方法吗?防护防护用品包括哪些?win10发布windows 10什么时候发布nvidia官方网站官网NVIDIA驱动和win10系统不兼容,怎么解决?光纤是什么什么是光纤.是什么材料做的?招行信用卡还款招行信用卡怎么还款全球随机视频网全球随机视频网怎么打字和别人聊天?4g上网卡什么是4G无线上网卡
高防服务器租用选锐一 花生壳免费域名申请 三级域名网站 google电话 edgecast bandwagonhost 美国主机评论 l5520 idc评测网 512au 免费smtp服务器 新家坡 qq云端 linux服务器维护 hdd hkt 免费邮件服务器 帽子云排名 免费个人主页 腾讯云平台 更多