当前位置:   article > 正文

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

读取 cookie expire

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

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

  1. a=getCookie("username3");
  2. c_start=document.cookie.indexOf("username3=");
  3. if(c_start == -1){
  4. $("#login_form").show();
  5. $("#logined").hide();
  6. }
  7. else{
  8. $("#login_form").hide();
  9. $("#logined").show();
  10. $("#ustr").html(a);
  11. }

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

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

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

  1. //获得coolie 的值
  2. function cookie(name){
  3. var cookieArray=document.cookie.split("; "); //得到分割的cookie名值对
  4. var cookie=new Object();
  5. for (var i=0;i<cookieArray.length;i++){
  6. var arr=cookieArray[i].split("="); //将名和值分开
  7. if(arr[0]==name)return unescape(arr[1]); //如果是指定的cookie,则返回它的值
  8. }
  9. return "";
  10. }
  1. //删除cookie
  2. function delCookie(name)
  3. {
  4. document.cookie = name+"=;expires="+(new Date(0)).toGMTString();
  5. }
  1. //获取指定名称的cookie的值
  2. function getCookie(objName){
  3. var arrStr = document.cookie.split("; ");
  4. for(var i = 0;i < arrStr.length;i ++){
  5. var temp = arrStr[i].split("=");
  6. if(temp[0] == objName) return unescape(temp[1]);
  7. }
  8. }
  1. //添加cookie
  2. function addCookie(objName,objValue,objHours){
  3. var str = objName + "=" + escape(objValue);
  4. if(objHours > 0){ //为时不设定过期时间,浏览器关闭时cookie自动消失
  5. var date = new Date();
  6. var ms = objHours*3600*1000;
  7. date.setTime(date.getTime() + ms);
  8. str += "; expires=" + date.toGMTString();
  9. }
  10. document.cookie = str;
  11. }
  1. //两个参数,一个是cookie的名子,一个是值
  2. function SetCookie(name,value)
  3. {
  4. var Days = 30; //此 cookie 将被保存 30 天
  5. var exp = new Date(); //new Date("December 31, 9998");
  6. exp.setTime(exp.getTime() + Days*24*60*60*1000);
  7. document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
  8. }
  1. //取cookies函数
  2. function getCookie(name)
  3. {
  4. var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
  5. if(arr != null) return unescape(arr[2]); return null;
  6. }
  1. //删除cookie
  2. function delCookie(name)
  3. {
  4. var exp = new Date();
  5. exp.setTime(exp.getTime() - 1);
  6. var cval=getCookie(name);
  7. if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
  8. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/149807
推荐阅读
相关标签
  

闽ICP备14008679号