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 相关文章推荐
js最简单的拖拽效果实现代码
Sep 24 Javascript
基于Jquery实现的一个图片滚动切换
Jun 21 Javascript
js动态添加表格数据使用insertRow和insertCell实现
May 22 Javascript
全面了解javascript中的错误处理机制
Jul 18 Javascript
JS给Array添加是否包含字符串的简单方法
Oct 29 Javascript
Vue不能检测到Object/Array更新的情况的解决
Jun 26 Javascript
JS实现的小火箭发射动画效果示例
Dec 08 Javascript
vue+Vue Router多级侧导航切换路由(页面)的实现代码
Dec 20 Javascript
layUI实现三级导航菜单效果
Jul 26 Javascript
javascript面向对象创建对象的方式小结
Jul 29 Javascript
基于JavaScript获取url参数2种方法
Apr 17 Javascript
javascript中闭包closure的深入讲解
Mar 03 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
索尼SONY ICF-SW7600GR电路分析与改良
2021/03/02 无线电
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
php FLEA中二叉树数组的遍历输出
2012/09/26 PHP
使用PHP Socket 编程模拟Http post和get请求
2014/11/25 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
PHP析构函数destruct与垃圾回收机制的讲解
2019/03/22 PHP
Laravel如何自定义command命令浅析
2019/03/23 PHP
laravel 解决多库下的DB::transaction()事务失效问题
2019/10/21 PHP
为EasyUI的Tab标签添加右键菜单的方法
2012/07/14 Javascript
多种方法实现JS动态添加事件
2013/11/01 Javascript
JQuery中的事件及动画用法实例
2015/01/26 Javascript
PHP+mysql+Highcharts生成饼状图
2015/05/04 Javascript
js中javascript:void(0) 真正含义
2020/11/05 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
Bootstrap项目实战之子栏目资讯内容
2016/04/25 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
2016/06/24 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
使用angular-cli webpack创建多个包的方法
2018/10/16 Javascript
微信小程序实现保存图片到相册功能
2018/11/30 Javascript
浅谈关于JS下大批量异步任务按顺序执行解决方案一点思考
2019/01/08 Javascript
vue 实现小程序或商品秒杀倒计时
2019/04/14 Javascript
纯 JS 实现放大缩小拖拽功能(完整代码)
2019/11/25 Javascript
angularjs模态框的使用代码实例
2019/12/20 Javascript
Python递归函数定义与用法示例
2017/06/02 Python
Python OpenCV 调用摄像头并截图保存功能的实现代码
2019/07/02 Python
Python3安装psycopy2以及遇到问题解决方法
2019/07/03 Python
英国品牌男装折扣网站:Brown Bag
2018/03/08 全球购物
Holiday Inn中国官网:IHG旗下假日酒店预订
2018/04/08 全球购物
名人珠宝设计师:Melinda Maria Jewelry
2019/03/06 全球购物
美国家居装饰店:Z Gallerie
2020/12/28 全球购物
促销活动策划方案
2014/01/12 职场文书
菜篮子工程实施方案
2014/03/08 职场文书
数学系毕业生求职信
2014/05/29 职场文书
2014年项目经理工作总结
2014/11/24 职场文书
员工评语范文
2014/12/31 职场文书