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 相关文章推荐
jquery插件之easing 动态菜单
Aug 21 Javascript
javascript的事件触发器介绍的实现
Jun 05 Javascript
js实现仿百度瀑布流的方法
Feb 05 Javascript
JavaScript实现url参数转成json形式
Sep 25 Javascript
js实现控制textarea输入字符串的个数,鼠标按下抬起判断输入字符数
Oct 25 Javascript
Bootstrap栅格系统学习笔记
Nov 25 Javascript
bootstrap侧边栏圆点导航
Jan 11 Javascript
jQuery制作图片旋转效果
Feb 02 Javascript
js的OOP继承实现(必看篇)
Feb 18 Javascript
jQuery动态生成不规则表格(前后端)
Feb 21 Javascript
JS变量及其作用域
Mar 29 Javascript
利用jQuery解析获取JSON数据
Apr 08 jQuery
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
BBS(php &amp; mysql)完整版(八)
2006/10/09 PHP
php防止SQL注入详解及防范
2013/11/12 PHP
PHP实现服务器状态监控的方法
2014/12/09 PHP
PHP的Yii框架中Model模型的学习教程
2016/03/29 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
2017/02/17 PHP
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
2019/03/07 PHP
比较详细的关于javascript中void(0)的具体含义解释
2007/08/02 Javascript
jQuery 1.8 Release版本发布了
2012/08/14 Javascript
jquery 删除字符串最后一个字符的方法解析
2014/02/11 Javascript
Jquery中offset()和position()的区别分析
2015/02/05 Javascript
JavaScript中Math.SQRT2属性的使用详解
2015/06/14 Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
2016/01/21 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
jQuery实现复选框的全选和反选
2017/02/02 Javascript
javascript简写常用的12个技巧(可以大大减少你的js代码量)
2020/03/28 Javascript
如何让微信小程序页面之间的通信不再变困难
2019/06/03 Javascript
vue解决花括号数据绑定不成功的问题
2019/10/30 Javascript
JavaScript命令模式原理与用法实例详解
2020/03/10 Javascript
vue渲染方式render和template的区别
2020/06/05 Javascript
vuejs实现下拉框菜单选择
2020/10/23 Javascript
[07:54]DOTA2-DPC中国联赛 正赛 iG vs VG 选手采访
2021/03/11 DOTA
python中的五种异常处理机制介绍
2014/09/02 Python
python操作文件的参数整理
2019/06/11 Python
使用python telnetlib批量备份交换机配置的方法
2019/07/25 Python
django+echart数据动态显示的例子
2019/08/12 Python
Python使用APScheduler实现定时任务过程解析
2019/09/11 Python
python numpy数组中的复制知识解析
2020/02/03 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
2020/04/07 Python
英国买鞋网站:Charles Clinkard
2019/11/14 全球购物
公司委托书怎么写
2014/08/02 职场文书
庆七一宣传标语
2014/10/08 职场文书
展览会邀请函
2015/02/02 职场文书
会议室管理制度范本
2015/08/06 职场文书
防震减灾主题班会
2015/08/14 职场文书
python识别围棋定位棋盘位置
2021/07/26 Python
利用python实时刷新基金估值(摸鱼小工具)
2021/09/15 Python