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 页面输出值
Nov 30 Javascript
JavaScript Ajax Json实现上下级下拉框联动效果实例代码
Nov 23 Javascript
js数字转换为float,取N位小数
Feb 08 Javascript
js禁止页面刷新与后退的方法
Jun 08 Javascript
浅谈JavaScript 执行环境、作用域及垃圾回收
May 31 Javascript
jQuery获取radio选中项的值实例
Jun 18 Javascript
探索Javascript中this的奥秘
Dec 11 Javascript
AngularJS实现表单验证功能详解
Oct 12 Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
Jul 12 Javascript
Vue对象赋值视图不更新问题及解决方法
Jun 03 Javascript
vue实现权限控制路由(vue-router 动态添加路由)
Nov 04 Javascript
通过微信公众平台获取公众号文章的方法示例
Dec 25 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
php Ajax乱码
2008/04/09 PHP
paypal即时到账php实现代码
2010/11/28 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
用jquery实现点击栏目背景色改变
2012/12/10 Javascript
JavaScript输入邮箱自动提示实例代码
2014/01/13 Javascript
JavaScript调试技巧之console.log()详解
2014/03/19 Javascript
jquery实现预览提交的表单代码分享
2014/05/21 Javascript
JavaScript实现仿网易通行证表单验证
2015/05/25 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
javascript每日必学之运算符
2016/02/16 Javascript
js简单判断flash是否加载完成的方法
2016/06/21 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
2016/09/20 Javascript
不使用script导入js文件的几种方法
2016/10/27 Javascript
js常用DOM方法详解
2017/02/04 Javascript
使用webpack3.0配置webpack-dev-server教程
2018/05/29 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
vue实现带复选框的树形菜单
2019/05/27 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
2019/06/10 jQuery
python dataframe astype 字段类型转换方法
2018/04/11 Python
python 搭建简单的http server,可直接post文件的实例
2019/01/03 Python
Django框架模板介绍
2019/01/15 Python
Python中 CSV格式清洗与转换的实例代码
2019/08/29 Python
详解Python time库的使用
2019/10/10 Python
django框架ModelForm组件用法详解
2019/12/11 Python
Python 绘制可视化折线图
2020/07/22 Python
HTML5仿手机微信聊天界面
2016/03/18 HTML / CSS
拓展培训心得体会
2014/01/04 职场文书
个人近期表现材料
2014/02/11 职场文书
市委常委会班子党的群众路线教育实践活动整改方案
2014/10/25 职场文书
单位委托函范文
2015/01/29 职场文书
生产车间管理制度
2015/08/04 职场文书
2015年教师节广播稿
2015/08/19 职场文书
“学党章、守党纪、讲党规”学习心得体会
2016/01/14 职场文书
「月刊Comic Alive」2022年5月号封面公开
2022/03/21 日漫
Win11应用商店打开闪退怎么解决? win11应用商店打不开的多种解决办法
2022/04/05 数码科技
排查并解决Oracle sysaux表空间异常增长
2022/04/20 Oracle