javascript操作Cookie(设置、读取、删除)方法详解


Posted in Javascript onMarch 18, 2015

Cookie是客户端存放数据的一种方式,可用来做状态保持。

1.设置Cookie:

a.无过期时间:(若不设置过期时间,默认为会话级Cookie,浏览器关闭就会失效)

function setCookie(name,value) {

    document.cookie = name + '=' + escape(value);

}

b.固定过期时间:

function setCookie(name,value)

{

    var Days = 30;

    var exp = new Date();

    exp.setTime(exp.getTime() + Days*24*60*60*1000);

    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();

}

c.自定义过期时间:

//设置自定义过期时间cookie

function setCookie(name,value,time)

{

    var msec = getMsec(time); //获取毫秒

    var exp = new Date();

    exp.setTime(exp.getTime() + msec*1);

    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();

}

//将字符串时间转换为毫秒,1秒=1000毫秒

function getMsec(DateStr)

{

   var timeNum=str.substring(0,str.length-1)*1; //时间数量

   var timeStr=str.substring(str.length-1,str.length); //时间单位前缀,如h表示小时

   

   if (timeStr=="s") //20s表示20秒

   {

        return timeNum*1000;

   }

   else if (timeStr=="h") //12h表示12小时

   {

       return timeNum*60*60*1000;

   }

   else if (timeStr=="d")

   {

       return timeNum*24*60*60*1000; //30d表示30天

   }

}

2.读取Cookie:

function getCookie(name)

{

    var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); //正则匹配

    if(arr=document.cookie.match(reg)){

      return unescape(arr[2]);

    }

    else{

     return null;

    }

}

3.删除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();

    }

}

4.调用示例:

setCookie("name","hayden");

alert(getCookie("name"));

以上就是本文关于javascript操作cookie的全部内容了,希望能够对大家学习javascript有所帮助。

Javascript 相关文章推荐
自适应高度框架 ----属个人收藏内容
Jan 22 Javascript
javascript 继承实现方法
Aug 26 Javascript
JS定义回车事件(实现代码)
Jul 08 Javascript
简单js代码实现selece二级联动(推荐)
Feb 18 Javascript
Node.js 制作实时多人游戏框架
Jan 08 Javascript
学习JavaScript设计模式之享元模式
Jan 18 Javascript
用最简单的方法判断JavaScript中this的指向(推荐)
Sep 04 Javascript
bootstrap实现二级下拉菜单效果
Nov 23 Javascript
vue iview组件表格 render函数的使用方法详解
Mar 15 Javascript
Java设计中的Builder模式的介绍
Mar 22 Javascript
通过实例了解JS 连续赋值
Sep 24 Javascript
js实现3D旋转相册
Aug 02 Javascript
jQuery选择id属性带有点符号元素的方法
Mar 17 #Javascript
jQuery统计指定子元素数量的方法
Mar 17 #Javascript
jquery让指定的元素闪烁显示的方法
Mar 17 #Javascript
多个jQuery版本共存的处理方案
Mar 17 #Javascript
jquery通过closest选择器修改上级元素的方法
Mar 17 #Javascript
jQuery判断元素上是否绑定了指定事件的方法
Mar 17 #Javascript
jQuery验证元素是否为空的两种常用方法
Mar 17 #Javascript
You might like
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
2014/09/27 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
图片连续滚动代码[兼容IE/firefox]
2009/06/11 Javascript
JavaScript 入门基础知识 想学习js的朋友可以参考下
2009/12/26 Javascript
jquery中each方法示例和常用选择器
2014/07/08 Javascript
第一篇初识bootstrap
2016/06/21 Javascript
AngularJS操作键值对象类似java的hashmap(填坑小结)
2016/11/12 Javascript
基于JavaScript实现窗口拖动效果
2017/01/18 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
2018/08/17 Javascript
angular将html代码输出为内容的实例
2018/09/30 Javascript
微信小程序canvas开发水果老虎机的思路详解
2020/02/07 Javascript
Vue组件模板的几种书写形式(3种)
2020/02/19 Javascript
Vue.js获取手机系统型号、版本、浏览器类型的示例代码
2020/05/10 Javascript
如何在Express4.x中愉快地使用async的方法
2020/11/18 Javascript
[01:04:08]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第一场 12.16
2020/12/18 DOTA
python基础教程之缩进介绍
2014/08/29 Python
浅谈python 四种数值类型(int,long,float,complex)
2016/06/08 Python
python如何查看系统网络流量的信息
2016/09/12 Python
Python中几种属性访问的区别与用法详解
2018/10/10 Python
Django中使用session保持用户登陆连接的例子
2019/08/06 Python
Pytorch之contiguous的用法
2019/12/31 Python
tensorflow使用指定gpu的方法
2020/02/04 Python
django实现将修改好的新模型写入数据库
2020/03/31 Python
3种适用于Python的疯狂秘密武器及原因解析
2020/04/29 Python
python中的split、rsplit、splitlines用法说明
2020/10/23 Python
CSS3伪类选择器:nth-child()
2009/04/02 HTML / CSS
Belle Maison倍美丛官网:日本千趣会旗下邮购网站
2016/07/22 全球购物
PHP面试题及答案一
2012/06/18 面试题
成都思必达公司C#程序员招聘面试题
2013/06/26 面试题
基于Python 函数和方法的区别说明
2021/03/24 Python
卫校护理专业毕业生求职信
2013/11/26 职场文书
社团文化节策划书
2014/02/01 职场文书
工地质量标语
2014/06/12 职场文书
辞职信怎么写?
2019/05/21 职场文书
Python爬虫基础之简单说一下scrapy的框架结构
2021/06/26 Python
Redisson实现Redis分布式锁的几种方式
2021/08/07 Redis