`
JavaSam
  • 浏览: 934094 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javascript小工具之——cookie操作

 
阅读更多
var docCookies = {
  getItem: function (sKey) {
    return decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*" + encodeURIComponent(sKey).replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=\\s*([^;]*).*$)|^.*$"), "$1")) || null;
  },
  setItem: function (sKey, sValue, vEnd, sPath, sDomain, bSecure) {
    if (!sKey || /^(?:expires|max\-age|path|domain|secure)$/i.test(sKey)) { return false; }
    var sExpires = "";
    if (vEnd) {
      switch (vEnd.constructor) {
        case Number:
          sExpires = vEnd === Infinity ? "; expires=Fri, 31 Dec 9999 23:59:59 GMT" : "; max-age=" + vEnd;
          break;
        case String:
          sExpires = "; expires=" + vEnd;
          break;
        case Date:
          sExpires = "; expires=" + vEnd.toUTCString();
          break;
      }
    }
    document.cookie = encodeURIComponent(sKey) + "=" + encodeURIComponent(sValue) + sExpires + (sDomain ? "; domain=" + sDomain : "") + (sPath ? "; path=" + sPath : "") + (bSecure ? "; secure" : "");
    return true;
  },
  removeItem: function (sKey, sPath, sDomain) {
    if (!sKey || !this.hasItem(sKey)) { return false; }
    document.cookie = encodeURIComponent(sKey) + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT" + ( sDomain ? "; domain=" + sDomain : "") + ( sPath ? "; path=" + sPath : "");
    return true;
  },
  hasItem: function (sKey) {
    return (new RegExp("(?:^|;\\s*)" + encodeURIComponent(sKey).replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=")).test(document.cookie);
  },
  keys: /* optional method: you can safely remove it! */ function () {
    var aKeys = document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g, "").split(/\s*(?:\=[^;]*)?;\s*/);
    for (var nIdx = 0; nIdx < aKeys.length; nIdx++) { aKeys[nIdx] = decodeURIComponent(aKeys[nIdx]); }
    return aKeys;
  }
};

 

 

  • 大小: 57.8 KB
0
0
分享到:
评论

相关推荐

    JavaScript入门经典(第3版) 附书源代码.rar

    avaScript中的数据类型与变量2.1 JavaScript中的数据类型2.2 变量——保存在内存中的数据2.3 设置浏览器以显示错误信息2.4 使用数据——计算数值及字符串的基本操作2.5 数据类型转换2.6 数组2.7 “在线小测试”程序...

    JavaScript入门经典(第1版)书源代码

    3.5 小结 3.6 习题第4章 JavaScript——基于对象的语言第5章 浏览器程序设计第6章 HTML表单——与用户进行交互第7章 窗体和框架第8章 字符串操作第9章 日期、时间和计时器第10章 常见错误、调试和错误处理第11章 ...

    从入门到精通HTML5——PDF——网盘链接

     2.3.10 删除过期的cookie 25  2.3.11 强制打开新窗口 25  2.3.12 设置网页的过渡效果 26  2.4 基底网址标记&lt;base&gt; 29  2.5 页面的主体标记&lt;body&gt; 30  2.5.1 设置文字颜色——text 31  2.5.2 ...

    JavaScript详解(第2版)

     14.11.2 JavaScript如何操作样式表   14.11.3 style对象   14.11.4 className属性   14.11.5 下拉菜单和提示框   14.12 应知应会   练习   第15章 W3C DOM与JavaScript   15.1 W3C DOM  ...

    JAVA WEB典型模块与项目实战大全

    7.3 指点迷津——cookie知识  7.4 统计访问量功能  7.5 指点迷津——session知识  7.6 统计在线人数功能  7.7 小结  第8章 网络购物车(jsp+servlet+javabean)  8.1 网络购物车原理  8.2 实现网络...

    JavaScript学习指南(第2版).pdf

    《JavaScript学习指南(第2版)》通过列举JavaScript应用的最佳实践和示例,本书展示了如何将该语言集成到浏览器环境中,及如何在符合标准的网站中应用这些已通过实践验证的编码技术。 本书内容: ● JavaScript应用...

    JavaScript王者归来part.1 总数2

     6.1.1.2 JavaScript函数的奥妙——魔法代码   6.1.2 函数的调用   6.2 函数的参数   6.2.1 形参与实参   6.2.2 Arguments对象   6.2.2.1 一个使用Arguments对象检测形参的例子   6.2.2.2 一个使用...

    php网络开发完全手册

    6.3 本地文件的操作实例——小型留言本 96 6.3.1 留言发表模块 96 6.3.2 浏览模块 98 6.4 远程文件的操作实例 99 6.5 文件的上传与下载 99 6.5.1 文件的上传 99 6.5.2 文件的下载 100 6.6 小结 101 第7章 字符的处理...

    littlejs::grinning_face:自己写的一个Javascript基础库——littlejs,Little and basic

    littlejs -- Little and basic【重构开发中】本项目是基于环境重构littlejs, 工具式JavaScript库,类似于loadsh。功能功能库: 运动框架; 用ajax实现前后端分离; 设置、获取或者删除cookie; 支持异步方法之一...

    CookieMonster:Cookie Clicker 插件,提供广泛的工具和统计数据来增强游戏

    饼干怪兽Cookie Monster是一个可以加载到 Cookie Clicker 的插件,它提供了广泛的工具和统计数据来增强游戏。 它不是作弊界面——虽然它确实提供了黄金饼干等的帮助,但一切都可以随意切换,只留下你想要的信息量。 ...

    亮剑.NET深入体验与实战精要2

    3.2.1 Cookie 121 3.2.2 HtmlInputHidden隐藏域 123 3.2.3 ViewState 123 3.2.4 查询字符串Request 124 3.2.5 Aplication对象 125 3.2.6 Session对象 125 3.2.7 示例项目:在线用户列表统计 128 3.3 服务器和客户端...

    亮剑.NET深入体验与实战精要3

    3.2.1 Cookie 121 3.2.2 HtmlInputHidden隐藏域 123 3.2.3 ViewState 123 3.2.4 查询字符串Request 124 3.2.5 Aplication对象 125 3.2.6 Session对象 125 3.2.7 示例项目:在线用户列表统计 128 3.3 服务器和客户端...

    asp.net知识库

    帮助解决网页和JS文件中的中文编码问题的小工具 慎用const关键字 装箱,拆箱以及反射 动态调用对象的属性和方法——性能和灵活性兼备的方法 消除由try/catch语句带来的warning 微软的应试题完整版(附答案) 一个...

    ASP.NET MVC 3高级编程

    7.4.3 威胁:cookie盗窃 158 7.4.4 威胁:重复提交 160 7.4.5 威胁:开放重定向 162 7.5 适当的错误报告和堆栈跟踪 170 7.5.1 使用配置转换 171 7.5.2 使用retail部署配置 172 7.5.3 使用专门的错误日志系统 ...

    [完整][中文][WEB安全测试].(美)霍普.扫描版.pdf

     ·获取、安装和配置有用的——且免费的——安全测试工具  ·理解你的应用如何与用户通信,这样你就可以在测试中更好地模拟攻击  ·从许多不同的模拟常见攻击(比如SQL注入、跨站式脚本和操纵隐藏表单域)的方法中...

    jQuery权威指南-源代码

    ——JavaScript开发者社区 jQuery从众多的Ajax框架中脱颖而出,已经成为Web开发领域的事实标准。《jQuery权威指南》除了理论知识丰富而全面外,它还有一个最大的特点就是注重实战,每个知识点都有一个完整的案例,...

    精通AngularJS part1

    第1章Angular之禅7 11邂逅AngularJS7 熟悉框架8 参与AngularJS项目8 社区8 在线学习资源9 库和扩展9 工具9 Batarang10 Plunker与jsFiddle10 IDE扩展和插件10 12AngularJS速成10 HelloWorld——AngularJS...

    java web 视频、电子书、源码(李兴华老师出版)

    6.4.3、操作Cookie 6.5、session对象 6.5.1、取得Session Id 6.5.2、登陆及注销 6.5.3、判断新用户 6.5.4、取得用户的操作时间 6.6、application对象 6.6.1、取得虚拟目录对应的绝对路径 6.6.2、范例...

Global site tag (gtag.js) - Google Analytics