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 相关文章推荐
Jquery从头学起第四讲 jquery入门教程
Aug 01 Javascript
jquery 提交值不为空的元素示例代码
May 10 Javascript
详解JavaScript正则表达式中的global属性的使用
Jun 16 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
Aug 04 Javascript
Bootstrap富文本组件wysiwyg数据保存到mysql的方法
May 09 Javascript
BootStrap中Table分页插件使用详解
Oct 09 Javascript
微信小程序 Flex布局详解
Oct 09 Javascript
JavaScript中创建对象的7种模式详解
Feb 21 Javascript
用js实现before和after伪类的样式修改的示例代码
Sep 07 Javascript
vue仿淘宝订单状态的tab切换效果
Jun 23 Javascript
JS实现点击发送验证码 xx秒后重新发送功能
Jul 30 Javascript
原生JS无缝滑动轮播图
Oct 22 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判断浏览器、判断语言代码分享
2015/03/05 PHP
php使用glob函数遍历文件和目录详解
2016/09/23 PHP
php如何把表单内容提交到数据库
2019/07/08 PHP
JS获取IUSR_机器名和IWAM_机器名帐号的密码
2006/12/06 Javascript
javascript学习基础笔记之DOM对象操作
2011/11/03 Javascript
json的前台操作和后台操作实现代码
2012/01/20 Javascript
js获取UserControl内容为拼html时提供方便
2014/11/02 Javascript
浅谈JSON.parse()和JSON.stringify()
2015/07/14 Javascript
基于JavaScript实现文字超出部分隐藏
2016/02/29 Javascript
AngularJS equal比较对象实例详解
2016/09/14 Javascript
详解VUE 数组更新
2017/12/16 Javascript
NodeJS服务器实现gzip压缩的示例代码
2018/10/12 NodeJs
Vuex的基本概念、项目搭建以及入坑点
2018/11/04 Javascript
vue.config.js中配置Vue的路径别名的方法
2020/02/11 Javascript
一篇文章带你搞懂Vue虚拟Dom与diff算法
2020/08/25 Javascript
基于JavaScript实现随机点名器
2021/02/25 Javascript
[04:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster 选手采访
2021/03/11 DOTA
python不带重复的全排列代码
2013/08/13 Python
python实现rest请求api示例
2014/04/22 Python
python调用短信猫控件实现发短信功能实例
2014/07/04 Python
Python实现计算文件夹下.h和.cpp文件的总行数
2015/04/23 Python
在Python的Django框架下使用django-tagging的教程
2015/05/30 Python
python中实现迭代器(iterator)的方法示例
2017/01/19 Python
python3+PyQt5使用数据库表视图
2018/04/24 Python
Python基于多线程实现ping扫描功能示例
2018/07/23 Python
Python在Matplotlib图中显示中文字体的操作方法
2019/07/29 Python
Django微信小程序后台开发教程的实现
2020/06/03 Python
python中使用.py配置文件的方法详解
2020/11/23 Python
html5 初试 indexedDB(推荐)
2016/07/21 HTML / CSS
美国孕妇装购物网站:Motherhood Maternity
2019/09/22 全球购物
学习保证书
2015/01/17 职场文书
2015年师德师风自我评价范文
2015/03/05 职场文书
质检员工作总结2015
2015/04/25 职场文书
高一数学教学反思
2016/02/18 职场文书
职业生涯规划书之大学四年
2019/08/07 职场文书
golang中切片copy复制和等号复制的区别介绍
2021/04/27 Golang