JavaScript操作cookie类实例


Posted in Javascript onMarch 31, 2015

本文实例讲述了JavaScript操作cookie类。分享给大家供大家参考。具体如下:

用法:

一、设置cookie

var cookie = new JSCookie();
// 普通设置
cookie .SetCookie("key1","val1");
// 过期时间为一年
var expire_time = new Date();
expire_time.setFullYear(expire_time.getFullYear() + 1);
cookie .SetCookie("key2","val2",expire_time);
// 设置域及路径,带过期时间
cookie .SetCookie("key3","val3",expire_time,".cnblogs.com","/");
// 设置带子键的cookie,子键分别是k1,k2,k3
cookie .SetCookie("key4","k1=1&k2=2&k3=3");

二、读取cookie

// 简单获取
cookie .GetCookie("key1");
cookie .GetCookie("key2");
cookie .GetCookie("key3");
cookie .GetCookie("key4");
// 获取key4的子键k1值
cookie .GetChild("key4","k1");

三、删除

cookie .Expire("key1");
cookie .Expire("key2");
cookie .Expire("key3");
cookie .Expire("key4");

示例:

<script type="text/javascript">
 String.prototype.Trim = function()
 {
   return this.replace(/^\s+/g,"").replace(/\s+$/g,"");
 }
 function JSCookie()
 {
   this.GetCookie = function(key)
   {
     var cookie = document.cookie;
     var cookieArray = cookie.split(';');
     var getvalue = "";
     for(var i = 0;i<cookieArray.length;i++)
     {
       if(cookieArray[i].Trim().substr(0,key.length) == key)
       {
         getvalue = cookieArray[i].Trim().substr(key.length + 1);
         break;
       }
     }
     return getvalue;
   };
   this.GetChild = function(cookiekey,childkey)
   {
     var child = this.GetCookie(cookiekey);
     var childs = child.split('&');
     var getvalue = "";
     for(var i = 0;i < childs.length;i++)
     {
       if(childs[i].Trim().substr(0,childkey.length) == childkey)
       {
         getvalue = childs[i].Trim().substr(childkey.length + 1);
         break;
       }
     }
     return getvalue;
   };
   this.SetCookie = function(key,value,expire,domain,path)
   {
     var cookie = "";
     if(key != null && value != null)
       cookie += key + "=" + value + ";";
     if(expire != null)
       cookie += "expires=" + expire.toGMTString() + ";";
     if(domain != null)
       cookie += "domain=" + domain + ";";
     if(path != null)
       cookie += "path=" + path + ";";
     document.cookie = cookie;
   };
   this.Expire = function(key)
   {
     expire_time = new Date();
     expire_time.setFullYear(expire_time.getFullYear() - 1);
     var cookie = " " + key + "=e;expires=" + expire_time + ";"
     document.cookie = cookie;
   }
 }
</script>

至此完毕.

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Javascript 表单之间的数据传递代码
Dec 04 Javascript
jQuery autocomplete插件修改
Apr 17 Javascript
jQuery Lightbox 图片展示插件使用说明
Apr 25 Javascript
jqgrid 表格数据导出实例
Nov 21 Javascript
Node.js+Express配置入门教程
May 19 Javascript
浅谈JS读取DOM对象(标签)的自定义属性
Nov 21 Javascript
jQuery按需加载轮播图(web前端性能优化)
Feb 17 Javascript
JS求Number类型数组中最大元素方法
Apr 08 Javascript
浅谈针对Vue相同路由不同参数的刷新问题
Sep 29 Javascript
前端天气插件tpwidget使用方法详解
Jun 24 Javascript
jQuery内容选择器与表单选择器实例分析
Jun 28 jQuery
JavaScript如何把两个数组对象合并过程解析
Oct 10 Javascript
javascript实现简单的贪吃蛇游戏
Mar 31 #Javascript
javascript制作2048游戏
Mar 30 #Javascript
JavaScript模拟实现继承的方法
Mar 30 #Javascript
jQuery制作可自定义大小的拼图游戏
Mar 30 #Javascript
JS实现向表格中动态添加行的方法
Mar 30 #Javascript
JS实现向表格行添加新单元格的方法
Mar 30 #Javascript
JS实现控制表格行文本对齐的方法
Mar 30 #Javascript
You might like
怎么使 Mysql 数据同步
2006/10/09 PHP
php使用Jpgraph绘制柱形图的方法
2015/06/10 PHP
PHP生成随机数的方法总结
2018/03/01 PHP
jquery中ajax调用json数据的使用说明
2011/03/17 Javascript
一个简单的js树形菜单
2011/12/09 Javascript
浅析return false的正确使用
2013/11/04 Javascript
JS动态修改iframe高度和宽度的方法
2015/04/01 Javascript
jQuery实现的导航动画效果(附demo源码)
2016/04/01 Javascript
js实现页面跳转的几种方法小结
2016/05/16 Javascript
AngularJs解决跨域问题案例详解(简单方法)
2016/05/19 Javascript
jq实现左滑显示删除按钮,点击删除实现删除数据功能(推荐)
2016/08/23 Javascript
JS实现重新加载当前页面
2016/11/29 Javascript
初识NodeJS服务端开发入门(Express+MySQL)
2017/04/07 NodeJs
easyui-datagrid开发实践(总结)
2017/08/02 Javascript
详解Vue中一种简易路由传参办法
2017/09/15 Javascript
JS使用tofixed与round处理数据四舍五入的区别
2017/10/25 Javascript
Angular动态绑定样式及改变UI框架样式的方法小结
2018/09/03 Javascript
layui清空,重置表单数据的实例
2019/09/12 Javascript
2019最新21个MySQL高频面试题介绍
2020/02/06 Javascript
Vue+Element ui 根据后台返回数据设置动态表头操作
2020/09/21 Javascript
[01:16:50]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第一场 3月7日
2021/03/11 DOTA
python数组过滤实现方法
2015/07/27 Python
PyCharm代码格式调整方法
2018/05/23 Python
Python SVM(支持向量机)实现方法完整示例
2018/06/19 Python
CSS3利用text-shadow属性实现多种效果的文字样式展现方法
2016/08/25 HTML / CSS
华硕新加坡官方网上商店:ASUS Singapore
2020/07/09 全球购物
大学本科毕业生求职简历的自我评价
2013/10/09 职场文书
自荐信要包含哪些内容
2013/11/06 职场文书
电脑售后服务承诺书
2014/03/27 职场文书
六年级学生评语
2014/04/22 职场文书
学党史心得体会
2014/09/05 职场文书
夫妻分居协议书范本(有子女版)
2014/11/01 职场文书
画展观后感
2015/06/17 职场文书
关于JavaScript回调函数的深入理解
2021/06/27 Javascript
【DOTA2】半决赛强强对话~ PSG LGD vs EHOME - DPC 2022 CN REGIONAL FINALS WINTER
2022/04/02 DOTA
Redis实现分布式锁的五种方法详解
2022/06/14 Redis