javascript操作cookie


Posted in Javascript onJanuary 17, 2017

前端js cookie的使用

cookie的作用:服务器可以利用Cookies包含信息的任意性来筛选并经常性维护这些信息,以判断在HTTP传输中的状态。Cookies最典型的应用是判定注册用户是否已 经登录网站,用户可能会得到提示,是否在下一次进入此网站时保留用户信息以便简化登录手续,这些都是Cookies的功用。另一个重要应用场合是“购物 车”之类处理。用户可能会在一段时间内在同一家网站的不同页面中选择不同的商品,这些信息都会写入Cookies,以便在最后付款时提取信息。

js设置cookie

document.cookie="popped=yes"

js获取cookie

function get_cookie(Name) {
  var search = Name + "="//查询检索的值
  var returnvalue = "";//返回值
  if (document.cookie.length > 0) {
   sd = document.cookie.indexOf(search);
   if (sd!= -1) {
    sd += search.length;
    end = document.cookie.indexOf(";", sd);
    if (end == -1)
     end = document.cookie.length;
     //unescape() 函数可对通过 escape() 编码的字符串进行解码。
    returnvalue=unescape(document.cookie.substring(sd, end))
   }
  } 
  return returnvalue;
}
//使用方式:
get_cookie("popped");

给cookie设置终止日期

例如:如果要将cookie设置为10天后过期,可以这样实现:

//获取当前时间
var date=new Date();
var expiresDays=10;
//将date设置为10天以后的时间
date.setTime(date.getTime()+expiresDays*24*3600*1000);
//将userId和userName两个cookie设置为10天后过期
document.cookie="userId=828; userName=hulk; expires="+date.toGMTString();

删除cookie

为了删除一个cookie,可以将其过期时间设定为一个过去的时间,例如:

//获取当前时间
var date=new Date();
//将date设置为过去的时间
date.setTime(date.getTime()-10000);
//将userId这个cookie删除
document.cookie="userId=828; expires="+date.toGMTString();

下面封装上面的方法

var cookie = {
  set:function(key,val,time){//设置cookie方法
    var date=new Date(); //获取当前时间
    var expiresDays=time; //将date设置为n天以后的时间
    date.setTime(date.getTime()+expiresDays*24*3600*1000); //格式化为cookie识别的时间
    document.cookie=key + "=" + val +";expires="+date.toGMTString(); //设置cookie
  },
  get:function(key){//获取cookie方法
    /*获取cookie参数*/
    var getCookie = document.cookie.replace(/[ ]/g,""); //获取cookie,并且将获得的cookie格式化,去掉空格字符
    var arrCookie = getCookie.split(";") //将获得的cookie以"分号"为标识 将cookie保存到arrCookie的数组中
    var tips; //声明变量tips
    for(var i=0;i<arrCookie.length;i++){  //使用for循环查找cookie中的tips变量
      var arr=arrCookie[i].split("=");  //将单条cookie用"等号"为标识,将单条cookie保存为arr数组
      if(key==arr[0]){ //匹配变量名称,其中arr[0]是指的cookie名称,如果该条变量为tips则执行判断语句中的赋值操作
        tips=arr[1];  //将cookie的值赋给变量tips
        break;  //终止for循环遍历
      }
    },
   delete:function(key){ //删除cookie方法
     var date = new Date(); //获取当前时间
     date.setTime(date.getTime()-10000); //将date设置为过去的时间
     document.cookie = key + "=v; expires =" +date.toGMTString();//设置cookie
    }
    return tips;
  }
}

使用方式:

cookie.set("uesr","sss",24);//设置为24天过期
alert(cookie.get("uesr"));//获取cookie

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
用于table内容排序
Jul 21 Javascript
JQuery 学习笔记 element属性控制
Jul 23 Javascript
multiSteps 基于Jquery的多步骤滑动切换插件
Jul 22 Javascript
JS中的构造函数详细解析
Mar 10 Javascript
jQuery 1.9使用$.support替代$.browser的使用方法
May 27 Javascript
javascript实现的HashMap类代码
Jun 27 Javascript
JQuery实现鼠标滚轮滑动到页面节点
Jul 28 Javascript
妙用Bootstrap的 popover插件实现校验表单提示功能
Aug 29 Javascript
利用VUE框架,实现列表分页功能示例代码
Jan 12 Javascript
浅谈键盘上回车按钮的js触发事件
Feb 13 Javascript
简单实现js鼠标跟随效果
Aug 02 Javascript
解决LayUI表单获取不到data的问题
Aug 20 Javascript
vue.js学习笔记:如何加载本地json文件
Jan 17 #Javascript
微信小程序 网络请求(post请求,get请求)
Jan 17 #Javascript
详解微信小程序开发之城市选择器 城市切换
Jan 17 #Javascript
微信小程序实战之运维小项目
Jan 17 #Javascript
vue双向数据绑定原理探究(附demo)
Jan 17 #Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
Jan 17 #Javascript
浅析vue数据绑定
Jan 17 #Javascript
You might like
PHP 全角转半角实现代码
2010/05/16 PHP
php mail to 配置详解
2014/01/16 PHP
表单提交时自动复制内容到剪贴板的js代码
2007/03/16 Javascript
JS 常用校验函数
2009/03/26 Javascript
Extjs EditorGridPanel中ComboBox列的显示问题
2011/07/04 Javascript
checkbox使用示例
2013/08/23 Javascript
javascript获取dom的下一个节点方法
2014/09/05 Javascript
jquery读取xml文件实现省市县三级联动的方法
2015/05/29 Javascript
Javascript编写俄罗斯方块思路及实例
2015/07/07 Javascript
js淡入淡出焦点图幻灯片效果代码分享
2015/09/08 Javascript
浅析jQuery Ajax通用js封装
2016/06/22 Javascript
浅谈Vue的基本应用
2016/12/27 Javascript
JavaScript实现图像模糊化的方法实例
2017/01/15 Javascript
详解Vue2.X的路由管理记录之 钩子函数(切割流水线)
2017/05/02 Javascript
vue axios登录请求拦截器
2018/04/02 Javascript
微信小程序 接入腾讯地图的两种写法
2021/01/12 Javascript
用Python的Tornado框架结合memcached页面改善博客性能
2015/04/24 Python
python动态参数用法实例分析
2015/05/25 Python
Python使用正则表达式实现文本替换的方法
2017/04/18 Python
python3.6使用pymysql连接Mysql数据库
2018/05/25 Python
python requests 测试代理ip是否生效
2018/07/25 Python
matplotlib调整子图间距,调整整体空白的方法
2018/08/03 Python
Python tkinter常用操作代码实例
2020/01/03 Python
python通用读取vcf文件的类(复制粘贴即可用)
2020/02/29 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
2020/11/11 Python
Python实现随机爬山算法
2021/01/29 Python
HTML5 FormData 方法介绍以及实现文件上传示例
2017/09/12 HTML / CSS
博朗(Braun)俄罗斯官方商店:德国小家电品牌
2019/09/24 全球购物
Python面试题:Python是如何进行内存管理的
2014/08/04 面试题
管理学专业个人求职信范文
2013/09/21 职场文书
北京奥运会主题口号
2014/06/13 职场文书
委托书怎么写
2014/07/31 职场文书
2014年志愿者工作总结
2014/11/20 职场文书
2015年幼儿教育工作总结
2015/07/24 职场文书
html5移动端禁止长按图片保存的实现
2021/04/20 HTML / CSS
Python中的tkinter库简单案例详解
2022/01/22 Python