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 相关文章推荐
xml 与javascript结合的问题解决方法
Mar 24 Javascript
javascript 写类方式之二
Jul 05 Javascript
JavaScript中Object和Function的关系小结
Sep 26 Javascript
JS 无限级 Select效果实现代码(json格式)
Aug 30 Javascript
Jquery中val()表单取值赋值的实例代码
Aug 15 Javascript
JS比较两个时间大小的简单示例代码
Dec 20 Javascript
AngularJS中取消对HTML片段转义的方法例子
Jan 04 Javascript
JavaScript中逗号运算符介绍及使用示例
Mar 13 Javascript
vue获取DOM元素并设置属性的两种实现方法
Sep 30 Javascript
JS小球抛物线轨迹运动的两种实现方法详解
Dec 20 Javascript
Angular请求防抖处理第一次请求失效问题
May 17 Javascript
vue中的mescroll搜索运用及各种填坑处理
Oct 30 Javascript
深入理解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
php 更新数据库中断的解决方法
2009/06/05 PHP
php设计模式 Mediator (中介者模式)
2011/06/26 PHP
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
PHP内存缓存功能memcached示例
2016/10/19 PHP
jQuery $命名冲突解决方案汇总
2014/11/13 Javascript
jQuery on方法传递参数示例
2014/12/09 Javascript
javascript引用赋值(地址传值)用法实例
2015/01/13 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
2015/07/15 Javascript
IScroll5 中文API参数说明和调用方法
2016/05/21 Javascript
js图片切换具体实现代码
2016/10/13 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
2017/05/26 Javascript
JavaScript实现各种排序的代码详解
2017/08/28 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
nodejs实现截取上传视频中一帧作为预览图片
2017/12/10 NodeJs
vue-cli3.0如何使用CDN区分开发、生产、预发布环境
2018/11/22 Javascript
微信小程序--特定区域滚动到顶部时固定的方法
2019/04/28 Javascript
webpack + vue 打包生成公共配置文件(域名) 方便动态修改
2019/08/29 Javascript
node.js 微信开发之定时获取access_token
2020/02/07 Javascript
JavaScript设计模式之策略模式实现原理详解
2020/05/29 Javascript
Python中编写ORM框架的入门指引
2015/04/29 Python
使用Python来开发Markdown脚本扩展的实例分享
2016/03/04 Python
Python保存MongoDB上的文件到本地的方法
2016/03/16 Python
python实现聊天小程序
2018/03/13 Python
python检测主机的连通性并记录到文件的实例
2018/06/21 Python
pandas DataFrame 删除重复的行的实现方法
2019/01/29 Python
Python函数中不定长参数的写法
2019/02/13 Python
Jupyter notebook运行Spark+Scala教程
2020/04/10 Python
详解Pandas 处理缺失值指令大全
2020/07/30 Python
python 基于UDP协议套接字通信的实现
2021/01/22 Python
基于HTML5的WebGL经典3D虚拟机房漫游动画
2017/11/15 HTML / CSS
英国领先的豪华时尚家居网上商店:Amara
2019/08/12 全球购物
个人自我鉴定写法
2013/11/30 职场文书
放飞梦想演讲稿800字
2014/08/26 职场文书
国庆节促销广告语2014
2014/09/19 职场文书
2014年社区工作总结
2014/11/18 职场文书
2015教师个人师德工作总结
2015/10/23 职场文书