高级技术员普及Javascript 对cookie操作详解及实例
这篇文章主要讲解的是Javascript 对cookie操作详解及实例,资深技术强烈推荐,学技术的朋友快来顶一下!
js 操作 cookie 的方法
cookie
cookie,有时候也用其复数形式Cookies,指某些网站为了辨别用户身份,进行session跟踪而储存在用户本地终端上的数据(经常通过加密)。定义于RFC2109和2965都已废弃,最新取代的规范是RFC6265。
cookie的作用
服务器可以利用Cookie包含信息的任意性来筛选经常性维护这些信息,以判断在HTTP传输中的状态。Cookie最典型的英语是判断注册用户是否已经登录网站,用户可能会得到提示,是否在下一次进入此网站时保留用户信息以便简化登录步骤,浙西都是Cookie的功能。另一个重要张合是“购物车”之类处理。用户可能会在一段时间内在同一家网站的不同页面中选择不同的商品,这些信息都会写入Cookie,以便在最后付款时提取信息。
js设置cookie
document.cookie="key=value"; //例 document.cookie="name=weiqi"; //可以在控制台中打印出cookie console.log(document.cookie);
如何修改和获取cookie
js中并没有提供获取cookie的方法,所以只能自己封装方法,相同的key的cookie只能存在一个,如果定义了一个document.cookie="age=21",后面又定义了document.cookie="age=30",那么后面定义的cookie会覆盖前面定义的cookie,所以修改cookie值的时候只用重新定义个key相同的cookie就可以了。那么获取cookie的时候也只用在cookie中获取到这个key后面的“=”和“;”直接的字符串,那就是这个cookie的值了,获取的方法又很多种,这里我写一种比较简单的:
function getCookie(key){ var index = document.cookie.indexOf(key); var returnValue; if(index!==-1){ var tIndex = document.cookie.indexOf(";",index); var target = document.cookie.substring(index,tIndex); var returnValue = decodeURIComponent(target.replace(key+"=","")) } return returnValue; } document.cookie="name=weiqi"; getCookie("name"); //weiqi
删除cookie
cookie是有有效期的,前面我们设置cookie的时候都没有设置有效期,如果我们将cookie的有效期设置成一个已经过去的时间,那么它就无效了,下面来实现一下:
function delCookie(key){ var d = new Date(); document.cookie=key+"=;expires="+ d.toGMTString(); } document.cookie="name=weiqi"; delCookie("name"); //undefined
给cookie设置一个有效期
通过expires给cookie设置一个有效期,现在我们设置一个cookie的有效期是10天,如下:
var d = new Date(); var time = 10; d.setTime(d.getTime()+time*1000*60*60*24); document.cookie="name=weiqi;expires="+ d.toGMTString();
封装cookie
将自定义的一些方法完善一下封装成一个对象,这样在使用的时候就可以直接拿来用了:
//封装cookie方法的对象 var cookie = { setCookie:function(key,value,time){ if(key == undefined){ return; } if(time!== undefined){ var d = new Date(); d.setTime(d.getTime()+time*1000*60*60*24); document.cookie=key+"="+value+";expires="+ d.toGMTString(); }else{ document.cookie=key+"="+value; } }, getCookie:function(key){ var index = document.cookie.indexOf(key); var returnValue; if(index!==-1){ var tIndex = document.cookie.indexOf(";",index); var target = document.cookie.substring(index,tIndex); var returnValue = decodeURIComponent(target.replace(key+"=","")) } return returnValue; }, delCookie:function(key){ var d = new Date(); document.cookie=key+"=;expires="+ d.toGMTString(); } } //测试 cookie.setCookie("home") cookie.setCookie("name","卫旗"); cookie.setCookie("age",22); cookie.setCookie("sex","男") cookie.getCookie("sex") cookie.delCookie("age")
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
以上就是小编分享的Javascript 对cookie操作详解及实例有需要的用户可以按照上述步骤设置解决问题,不会的朋友赶快来学习一下吧。
上一篇:技术达人阐明JavaScript实现同一个页面打开多张图片
下一篇:优秀技术员解读javascript显示系统当前时间代码
本文标题:高级技术员普及Javascript 对cookie操作详解及实例
本文地址:https://www.tabangni.com/jsstudy/33987.html
查看更多与“jscookie”有关的文章
推荐阅读
- 1高级技术员普及Javascript 对cookie操作详解及实例
- 2图文叙述详解JavaScript原生封装ajax请求和Jquery中的ajax请求
- 3小编演示微信小程序mpvue点击按钮获取button值的方法
- 4技术牛人说明My Desktop :) 桌面式代码
- 5优秀技术员讲解js保留小数点后几位的写法
- 6主编讲说javascript实现网页端解压并查看zip文件
- 7笔者解读JavaScript深度复制(deep clone)的实现方法
- 8资深技术员讲诉全面解析Bootstrap中Carousel轮播的使用方法
- 9大神细说javascript简易画板开发
- 10技术大牛讲解基于JavaScript实现拖动滑块效果
最近更新
- 01-21高级技术员普及Javascript 对cookie操作详解及实例
- 01-21图文叙述详解JavaScript原生封装ajax请求和Jquery中的ajax请求
- 01-21正则表达式实现手机号中间4位数隐藏或者只显示末尾四位数
- 01-21小编演示微信小程序mpvue点击按钮获取button值的方法
- 01-21DropDownList 下拉框选择改变促发事件和防全局刷新(推荐)
- 01-21MySQL中触发器入门简单实例与介绍
- 01-21深入研究HTML5实现图片压缩上传功能
- 01-21PHP对文件夹递归执行chmod命令的方法
- 01-21HTML5响应式(自适应)网页设计的实现
- 01-21nginx配置支持php的pathinfo模式配置方法