Js添加、读取、删除cookie,判断cookie是否有效,指定domain域下主路径path下设置cookie,设置expires过期时间…

Js添加、读取、删除cookie,判断cookie是否有效,指定domain域下主路径path下设置cookie,设置expires过期时间…

https://www.cnblogs.com/codeon/p/7403418.html

有时我们需要用cookie保存用户名,记录登录状态,如何正确判断该机用户cookie是否存在呢?不能简单使用a!=”这样的写法。

正确方法是:判断是否存在名为username3的cookie,使用document.cookie.indexOf(“username3=”)来判断,如果返回值是-1,表示不存在。

 a=getCookie("username3");
 c_start=document.cookie.indexOf("username3="); if(c_start == -1){ $("#login_form").show(); $("#logined").hide(); } else{ $("#login_form").hide(); $("#logined").show(); $("#ustr").html(a); }

设置一年过期时间的cookie,用当前时间加上365 * 24 * 60 * 60 * 1000(毫秒)

//写入cookie到主域,设置过期时间为一年 function SetCookie(name, value) { console.log(name, value) var str = name + "=" + escape(value) + ";domain=.cnblogs.com;path=/"; var date = new Date(); date.setTime(date.getTime() + 365 * 24 * 60 * 60 * 1000); //设置date为当前时间加一年  str += ";expires=" + date.toGMTString(); console.log(str) document.cookie = str; }

用js添加、读取、保存、删除cookie的操作方法如下:

 //获得coolie 的值 function cookie(name){ var cookieArray=document.cookie.split("; "); //得到分割的cookie名值对 var cookie=new Object(); for (var i=0;i<cookieArray.length;i++){ var arr=cookieArray[i].split("="); //将名和值分开 if(arr[0]==name)return unescape(arr[1]); //如果是指定的cookie,则返回它的值  } return ""; } 

//删除cookie function delCookie(name) { document.cookie = name+"=;expires="+(new Date(0)).toGMTString(); }

//获取指定名称的cookie的值 function getCookie(objName){ var arrStr = document.cookie.split("; "); for(var i = 0;i < arrStr.length;i ++){ var temp = arrStr[i].split("="); if(temp[0] == objName) return unescape(temp[1]); } }

//添加cookie function addCookie(objName,objValue,objHours){ var str = objName + "=" + escape(objValue); if(objHours > 0){ //为时不设定过期时间,浏览器关闭时cookie自动消失 var date = new Date(); var ms = objHours*3600*1000; date.setTime(date.getTime() + ms); str += "; expires=" + date.toGMTString(); } document.cookie = str; }

//两个参数,一个是cookie的名子,一个是值 function SetCookie(name,value) { var Days = 30; //此 cookie 将被保存 30 天 var exp = new Date(); //new Date("December 31, 9998"); exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); }

//取cookies函数 function getCookie(name) { var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); if(arr != null) return unescape(arr[2]); return null; }

//删除cookie 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(); }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112696.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java实验三_生物总结必修三

    Java实验三_生物总结必修三JAVA第五周作业Java实验报告三第一题实验代码(1)统计该字符串中字母s出现的次数。cpublicclassLetter{publicstaticvoidmain(Str

    2022年8月3日
    2
  • 此工作站和主域间的信任关系失败原因_主域间的信任关系失败

    此工作站和主域间的信任关系失败原因_主域间的信任关系失败相信用域管理的童鞋都会遇到一个问题:在域账户登录的时候有时会出现“此工作站和主域间信任关系失败”那么遇到这种情况该如何解决的呢?跟我走:拔掉网线,登录系统在用户账户中把administrator账户打开,并设密码插上网线,退域,重启,用administrator账户登录重新加域,刷新策略即可 转载于:https://blog.51cto.com/xkai20/158…

    2022年10月19日
    0
  • mysql databus_Databus架构分析与初步实践(for mysql)(上篇)

    mysql databus_Databus架构分析与初步实践(for mysql)(上篇)作者:徐和东description:目前关于databus的相关资料较少,特别是针对mysql的文档尤为稀少。本篇文章中介绍了databus相关组件及实现原理,初步实现了databus对mysql数据库的数据抓取,希望对后续使用者能提供一定的参考作用。categories:后端date:2017/5/24tags:DatabusForMysql低延迟数据抓取数据库日志挖掘1.简介…

    2022年10月16日
    0
  • uniqueidentifier什么意思_数据类型int是什么意思

    uniqueidentifier什么意思_数据类型int是什么意思uniqueidentifier数据类型可存储16字节的二进制值,其作用与全局唯一标记符(GUID)一样。GUID是唯一的二进制数:世界上的任何两台计算机都不会生成重复的GUID值。GUID主要用于在用于多个节点,多台计算机的网络中,分配必须具有唯一性的标识符。在SQL中ROWGUIDCOL表示新列是行的全局唯一标识列。对于每个表只能指派一个uniqueidentifier列作为ROWGUI

    2022年9月4日
    2
  • unity3d教程视频_unity3d零基础自学教程

    unity3d教程视频_unity3d零基础自学教程Unity3D游戏开发知识系列图                        1、Unity3d基础操作说明:这部分课程是帮助掌握Unity基础的操作,为阶段的学习打下基础1)Unity3D初级课程之新手入门   课程地址:http://www.taikr.com/course/4292、NGUI3、Pl

    2022年9月19日
    0
  • 基础算法-查找:插值查找

    基础算法-查找:插值查找

    2021年9月6日
    51

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号