JS保存和删除cookie操作 判断cookie是否存在


Posted in Javascript onNovember 13, 2013

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

 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);
 }
 

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

JS保存、删除cookie操作

用js保存、删除cookie操作比较方便,不用在程序里面写,改起来也容易,比较全的用js保存、删除cookie操作的方法如下:

<script language=javascript> 
 //获得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 ""; 
} function delCookie(name)//删除cookie
{
   document.cookie = name+"=;expires="+(new Date(0)).toGMTString();
}
function getCookie(objName){//获取指定名称的cookie的值
    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]);
   } 
}
function addCookie(objName,objValue,objHours){      //添加cookie
    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;
}
function SetCookie(name,value)//两个参数,一个是cookie的名子,一个是值
{
    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();
}
function getCookie(name)//取cookies函数        
{
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
    if(arr != null) return unescape(arr[2]); return null;
}
function delCookie(name)//删除cookie
{
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval=getCookie(name);
    if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}
</script>
Javascript 相关文章推荐
电子商务网站上的常用的js放大镜效果
Dec 08 Javascript
使用javascript过滤html的字符串(注释标记法)
Jul 08 Javascript
jquery属性选择器not has怎么写 行悬停高亮显示
Nov 13 Javascript
jQuery选择器源码解读(一):Sizzle方法
Mar 31 Javascript
BootStrap 实现各种样式的进度条效果
Dec 07 Javascript
vue Render中slots的使用的实例代码
Jul 19 Javascript
p5.js入门教程之小球动画示例代码
Mar 15 Javascript
vue  directive定义全局和局部指令及指令简写
Nov 20 Javascript
vue中datepicker的使用教程实例代码详解
Jul 08 Javascript
vue 兄弟组件的信息传递的方法实例详解
Aug 30 Javascript
JS实现前端动态分页码代码实例
Jun 02 Javascript
用Javascript实现发送短信验证码间隔功能
Feb 08 Javascript
js 判断上传文件大小及格式代码
Nov 13 #Javascript
php跨域调用json的例子
Nov 13 #Javascript
JQuery文字列表向上滚动的代码
Nov 13 #Javascript
浅析Javascript使用include/require
Nov 13 #Javascript
js将字符串转成正则表达式的实现方法
Nov 13 #Javascript
js禁止页面使用右键(简单示例代码)
Nov 13 #Javascript
如何判断鼠标是否在DIV的区域内
Nov 13 #Javascript
You might like
ASP知识讲座四
2006/10/09 PHP
Base64在线编码解码实现代码 演示与下载
2011/01/08 PHP
php中global和$GLOBALS[]的分析之一
2012/02/02 PHP
php生成N个不重复的随机数实例
2013/11/12 PHP
codeigniter使用技巧批量插入数据实例方法分享
2013/12/31 PHP
PHP使用fopen与file_get_contents读取文件实例分享
2016/03/04 PHP
Jquery easyui 下loaing效果示例代码
2013/08/12 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
使用jQueryMobile实现滑动翻页效果的方法
2015/02/04 Javascript
js与jquery实时监听输入框值的oninput与onpropertychange方法
2015/02/05 Javascript
jQuery实现选项联动轮播效果【附实例】
2016/04/19 Javascript
javascript获取网页各种高宽及位置的方法总结
2016/07/27 Javascript
AngularJS基础 ng-repeat 指令简单示例
2016/08/03 Javascript
对称加密与非对称加密优缺点详解
2017/02/06 Javascript
简单实现bootstrap导航效果
2017/02/07 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
vue-router路由懒加载和权限控制详解
2017/12/13 Javascript
[34:08]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS EG
2018/03/30 DOTA
[03:04]2018年度DOTA2玩家最喜爱的主播-完美盛典
2018/12/16 DOTA
[01:32]完美世界DOTA2联赛10月29日精彩集锦
2020/10/30 DOTA
朴素贝叶斯算法的python实现方法
2014/11/18 Python
利用python批量修改word文件名的方法示例
2017/10/17 Python
使用numpy和PIL进行简单的图像处理方法
2018/07/02 Python
Python实现使用request模块下载图片demo示例
2019/05/24 Python
Python语法垃圾回收机制原理解析
2020/03/25 Python
Python数据正态性检验实现过程
2020/04/18 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
2020/11/27 Python
美国最大的家庭鞋类零售商之一:Shoe Carnival
2017/10/06 全球购物
英国网络托管和域名领导者:Web Hosting UK
2017/10/15 全球购物
如何查看在weblogic中已经发布的EJB
2012/06/01 面试题
上班玩游戏检讨书
2014/02/07 职场文书
公务员政审材料
2014/12/23 职场文书
2015年药店工作总结
2015/04/20 职场文书
歌咏比赛口号大全
2015/12/25 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书
Element-ui Layout布局(Row和Col组件)的实现
2021/12/06 Vue.js