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 相关文章推荐
Display SQL Server Version Information
Jun 21 Javascript
为JavaScript添加重载函数的辅助方法
Jul 04 Javascript
jQuery dialog 异步调用ashx,webservice数据的代码
Aug 03 Javascript
jQuery读取XML文件内容的方法
Mar 09 Javascript
javascript操作ul中li的方法
May 14 Javascript
jQuery实现图片走马灯效果的原理分析
Jan 16 Javascript
JavaScript Math 对象常用方法总结
Apr 28 Javascript
第一次接触神奇的Bootstrap
Oct 14 Javascript
jQuery Form插件使用详解_动力节点Java学院整理
Jul 17 jQuery
Bootstrap-table使用footerFormatter做统计列功能
Sep 07 Javascript
微信小程序常用的3种提示弹窗实现详解
Sep 19 Javascript
React中Ref 的使用方法详解
Apr 28 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
风格模板初级不完全修改教程
2006/10/09 PHP
PHP 创建文件(文件夹)以及目录操作代码
2010/03/04 PHP
用PHP为SHOPEX增加日志功能代码
2010/07/02 PHP
php内嵌函数用法实例
2015/03/20 PHP
jQuery应用之jQuery链用法实例
2015/01/19 Javascript
jQuery实现类似淘宝网图片放大效果的方法
2015/07/08 Javascript
学习jQuey中的return false
2015/12/18 Javascript
JavaScript中数组Array方法详解
2017/02/27 Javascript
Node.js读取文件内容示例
2017/03/07 Javascript
jQuery实现在HTML文档加载完毕后自动执行某个事件的方法
2017/05/08 jQuery
手把手教你把nodejs部署到linux上跑出hello world
2017/06/19 NodeJs
nodejs body-parser 解析post数据实例
2017/07/26 NodeJs
vue+axios+promise实际开发用法详解
2018/10/15 Javascript
使用VUE+iView+.Net Core上传图片的方法示例
2019/01/04 Javascript
Vue和React组件之间的传值方式详解
2019/01/31 Javascript
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
2019/05/21 Javascript
微信小程序入口场景的问题集合与相关解决方法
2019/06/26 Javascript
javascript运行机制之执行顺序理解
2020/08/03 Javascript
jQuery使用hide()、toggle()函数实现相机品牌展示隐藏功能
2021/01/29 jQuery
[06:42]DOTA2每周TOP10 精彩击杀集锦vol.1
2014/06/25 DOTA
python文件比较示例分享
2014/01/10 Python
Python基于二分查找实现求整数平方根的方法
2016/05/12 Python
Django页面数据的缓存与使用的具体方法
2019/04/23 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
Python+PyQt5+MySQL实现天气管理系统
2020/06/16 Python
宝塔面板成功部署Django项目流程(图文)
2020/06/22 Python
python import 上级目录的导入
2020/11/03 Python
英国泽西岛植物:Jersey Plants Direct
2019/08/07 全球购物
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
初婚未育证明
2014/01/15 职场文书
幼儿园评语大全
2014/04/17 职场文书
爬山的活动方案
2014/08/16 职场文书
Python基础之教你怎么在M1系统上使用pandas
2021/05/08 Python
Vue-Element-Admin集成自己的接口实现登录跳转
2021/06/23 Vue.js
详解Java ES多节点任务的高效分发与收集实现
2021/06/30 Java/Android
swagger如何返回map字段注释
2021/07/03 Java/Android