JavaScript cookie详解及简单实例应用


Posted in Javascript onDecember 31, 2016

JavaScript cookie详解

一、cookie基本介绍

    cookie是document的对象。cookie可以使得JavaScript代码能够在用户的硬盘上持久地存储数据,并且能够获得以这种方式存储的数据。cookie还可以用于客户端脚本化。

cookie数据可以自动地在Web浏览器好Web服务器之间传递。

    在浏览器中可以通过navigator.cookieEnabled属性检查浏览器的cookie功能是否被激活。

    二、cookie的基本属性    

    每个cookie都有四个可选的属性

    1.expires

        指定了cookie的生存期。将expires属性设定为未来的一个过期时间,即可让cookie在过期后失效。

    现在用max-age属性来代替它,max-age用秒来设置cookie的生命期。一旦超过了max-age的生命期,那个cookie就会被浏览器自动地从cookie文件中删除掉

    2.path

        指定了与cookie关联在一起的网页。默认情况下,cookie会和创建它的网页以及与这个网页处于同一个目录下的网页和处于该目录的子目录下的网页关联。

    这个主要设置了cookie对于网页的可见性。加入将path设置为www.a.com/list,那么www.a.com/list/a.html和www.a.com/list/b.html都可以访问cookie,但www.a.com/comtain不  能访问该cookie。但是如果将path设置为www.a.com/,那么www.a.com/list和www.a.com/contain都可以访问cookie。

    3.domain

        默认只有来自同一Web服务器的页面才能访问cookie,可以设置domain。例如把cookie的path设定为/,cookie设定为.example.com,则所有位于catalog.example.com和    orders.example.com的网页以及位于.example.com域名下其他服务器的网页都能访问这个cookie

    注意:不能讲一个cookie的域设置为服务器所在的域之外的域

    4.source

       source为一个布尔值,true由不安全的HTTP传输(默认);false只在浏览器和服务器通过HTTPS或其他的安全协议连接下才被传输。 

    三、cookie的应用

        一个cookie是一个字符串,有name=value这种结构组合而成。cookie的例子:

    version=1.0;max-age=3600      

    注意每段字符串之间不能包含逗号或者空格等,因此在写入cookie时需要使用encodeURIComponent去掉变量中的相关符号,读取时利用的decodeURIComponent 

    要创建一个能够持续存在一年的cookie:

document.cookie = “version=” + document.lastModified + “;max-age=” + (60*60*24*365);

    四、总结

    虽然现在浏览器的存储技术越来越多,HTML5也为localStorage带来了更高的性能体验,但是cookie仍然可以为我们处理很多事务,方便小型数据的交流。合理的使用cookie,可以让我们的应用程序更加灵活。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
ExtJS GTGrid 简单用户管理
Jul 01 Javascript
jquery ui 1.7 ui.tabs 动态添加与关闭(按钮关闭+双击关闭)
Apr 01 Javascript
jQuery中click事件用法实例
Dec 26 Javascript
jQuery左右滚动支持图片放大缩略图图片轮播代码分享
Aug 26 Javascript
浅析js中substring和substr的方法
Nov 09 Javascript
跟我学习javascript的arguments对象
Nov 16 Javascript
JavaScript弹出对话框的三种方式
Mar 23 Javascript
通过vue手动封装on、emit、off的代码详解
May 29 Javascript
Vue使用Proxy监听所有接口状态的方法实现
Jun 07 Javascript
基于jQuery实现挂号平台首页源码
Jan 06 jQuery
js实现轮播图效果 纯js实现图片自动切换
Aug 09 Javascript
vue如何使用rem适配
Feb 06 Vue.js
深入理解Angularjs向指令传递数据双向绑定机制
Dec 31 #Javascript
Angularjs使用ng-repeat中$even和$odd属性的注意事项
Dec 31 #Javascript
Angularjs通过指令监听ng-repeat渲染完成后执行脚本的方法
Dec 31 #Javascript
angularjs中ng-attr的用法详解
Dec 31 #Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
Dec 31 #Javascript
Angular JS数据的双向绑定详解及实例
Dec 31 #Javascript
Javascript 实现全屏滚动实例代码
Dec 31 #Javascript
You might like
新的一年,新的期待:DC在2020年的四部动画电影
2020/01/01 欧美动漫
一些使用频率比较高的php函数
2008/10/03 PHP
php过滤HTML标签、属性等正则表达式汇总
2014/09/22 PHP
PNG背景在不同浏览器下的应用
2009/06/22 Javascript
网页整体变灰白色(兼容各浏览器)实例
2013/04/21 Javascript
JavaScript实现复制功能各浏览器支持情况实测
2013/07/18 Javascript
JS验证邮箱格式是否正确的代码
2013/12/05 Javascript
jQuery循环动画与获取组件尺寸的方法
2015/02/02 Javascript
AngularJS控制器controller正确的通信的方法
2016/01/25 Javascript
ajax跨域调用webservice的实现代码
2016/05/09 Javascript
基于layui数据表格以及传数据的方式
2018/08/19 Javascript
vue  directive定义全局和局部指令及指令简写
2018/11/20 Javascript
JQuery判断radio单选框是否选中并获取值的方法
2019/01/17 jQuery
微信小程序-form表单提交代码实例
2019/04/29 Javascript
vue自定义树状结构图的实现方法
2020/10/18 Javascript
浅谈Vue使用Cascader级联选择器数据回显中的坑
2020/10/31 Javascript
python爬虫入门教程之糗百图片爬虫代码分享
2014/09/02 Python
python中根据字符串调用函数的实现方法
2016/06/12 Python
详解python3中的真值测试
2018/08/13 Python
python_opencv用线段画封闭矩形的实例
2018/12/05 Python
详解Python3之数据指纹MD5校验与对比
2019/06/11 Python
OpenCV 轮廓检测的实现方法
2019/07/03 Python
Python Socketserver实现FTP文件上传下载代码实例
2020/03/27 Python
Python filter过滤器原理及实例应用
2020/08/18 Python
eVitamins日本:在线购买折扣维生素、补品和草药
2019/04/04 全球购物
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
高中生家长寄语大全
2014/04/03 职场文书
干部鉴定材料
2014/05/18 职场文书
幼儿园安全生产月活动总结
2014/07/05 职场文书
关于读书的演讲稿500字
2014/08/27 职场文书
工作时间擅自离岗检讨书
2014/10/24 职场文书
面试感谢信范文
2015/01/22 职场文书
公司市场部岗位职责
2015/04/15 职场文书
全国助残日活动总结
2015/05/11 职场文书
企业转让协议书(范文2篇)
2019/08/15 职场文书
nginx如何将http访问的网站改成https访问
2021/03/31 Servers