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树形控件脚本代码
Jul 24 Javascript
JS实现div内部的文字或图片自动循环滚动代码
Apr 19 Javascript
node.js中的buffer.length方法使用说明
Dec 14 Javascript
node.js操作mongodb学习小结
Apr 25 Javascript
js实现简单锁屏功能实例
May 27 Javascript
jquery实现删除一个元素后面的所有元素功能
Dec 21 Javascript
深入学习Bootstrap表单
Dec 13 Javascript
js实现抽奖效果
Mar 27 Javascript
详解Vue.js分发之作用域槽
Jun 13 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
Jul 24 Javascript
从零开始搭建一个react项目开发
Feb 09 Javascript
js 图片懒加载的实现
Oct 21 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 XML操作类DOMDocument
2009/12/16 PHP
分享下页面关键字抓取www.icbase.com站点代码(带asp.net参数的)
2014/01/30 PHP
PHP合并静态文件详解
2014/11/14 PHP
PHP使用观察者模式处理异常信息的方法详解
2019/09/24 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
js 有框架页面跳转(target)三种情况下的应用
2013/04/09 Javascript
jQuery实现表单提交时判断的方法
2014/12/13 Javascript
JS实现控制表格行内容垂直对齐的方法
2015/03/30 Javascript
详解JavaScript对象和数组
2015/12/03 Javascript
jquery.validate使用详解
2016/06/02 Javascript
jQuery编写设置和获取颜色的插件
2017/01/09 Javascript
jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】
2017/03/03 Javascript
JQuery判断正整数整理小结
2017/08/21 jQuery
AngularJS 中ui-view传参的实例详解
2017/08/25 Javascript
基于jQuery中ajax的相关方法汇总(必看篇)
2017/11/08 jQuery
angular2模块和共享模块详解
2018/04/08 Javascript
原生JS检测CSS3动画是否结束的方法详解
2019/01/27 Javascript
JS中的算法与数据结构之列表(List)实例详解
2019/08/16 Javascript
ES6中Symbol、Set和Map用法详解
2019/08/20 Javascript
python下调用pytesseract识别某网站验证码的实现方法
2016/06/06 Python
详解python eval函数的妙用
2017/11/16 Python
python SSH模块登录,远程机执行shell命令实例解析
2018/01/12 Python
python修改list中所有元素类型的三种方法
2018/04/09 Python
对命令行模式与python交互模式介绍
2018/05/12 Python
python将视频转换为全字符视频
2019/04/26 Python
Python画图高斯分布的示例
2019/07/10 Python
解决Django提交表单报错:CSRF token missing or incorrect的问题
2020/03/13 Python
美国折衷生活方式品牌:Robert Graham
2018/07/13 全球购物
全球最大的房车租赁市场:Outdoorsy
2018/09/19 全球购物
西班牙最大的婴儿用品网上商店:Bebitus
2019/05/30 全球购物
《母亲的恩情》教学反思
2014/02/13 职场文书
保护环境演讲稿
2014/05/10 职场文书
组工干部演讲稿
2014/09/02 职场文书
员工试用期自我评价
2014/09/18 职场文书
环保建议书作文400字
2015/09/14 职场文书
标准版个人借条怎么写?以及什么是借条?
2019/08/28 职场文书