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 相关文章推荐
javascript 快速排序函数代码
May 30 Javascript
jquery indexOf使用方法
Aug 19 Javascript
JavaScript模拟数组合并concat
Mar 06 Javascript
jQuery插件HighCharts绘制2D带有Legend的饼图效果示例【附demo源码下载】
Mar 10 Javascript
vue2.0实现导航菜单切换效果
May 08 Javascript
手把手搭建安装基于windows的Vue.js运行环境
Jun 12 Javascript
基于JavaScript表单脚本(详解)
Oct 18 Javascript
node下使用UglifyJS压缩合并JS文件的方法
Mar 07 Javascript
vue监听对象及对象属性问题
Aug 20 Javascript
vue 移动端适配方案详解
Nov 15 Javascript
Vue.js 中的 v-show 指令及用法详解
Nov 19 Javascript
JS实现手风琴特效
Nov 08 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 URL路由类实例
2013/11/12 PHP
php把数组值转换成键的方法
2015/07/13 PHP
PHP实现mysqli批量执行多条语句的方法示例
2017/07/22 PHP
php解析非标准json、非规范json的方式实例
2020/12/10 PHP
jquery选择checked在ie8普通模式下的问题
2014/02/12 Javascript
详解JavaScript ES6中的Generator
2015/07/28 Javascript
JS实现光滑展开合拢的菜单效果代码
2015/09/16 Javascript
Bootstrap table学习笔记(2) 前后端分页模糊查询
2017/05/18 Javascript
Angular 2父子组件数据传递之@ViewChild获取子组件详解
2017/07/04 Javascript
js实现可以点击收缩或张开的悬浮窗
2017/09/18 Javascript
详解AngularJS 过滤器的使用
2018/06/02 Javascript
详解如何从零开始搭建Express+Vue开发环境
2018/07/17 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
2019/04/28 Javascript
vue 源码解析之虚拟Dom-render
2019/08/26 Javascript
[45:17]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第三场 1月9日
2021/03/11 DOTA
Python help()函数用法详解
2014/03/11 Python
python通过colorama模块在控制台输出彩色文字的方法
2015/03/19 Python
Python3使用requests包抓取并保存网页源码的方法
2016/03/15 Python
python实现随机漫步算法
2018/08/27 Python
Python3的介绍、安装和命令行的认识(推荐)
2018/10/20 Python
python random从集合中随机选择元素的方法
2019/01/23 Python
Python字典对象实现原理详解
2019/07/01 Python
python+numpy实现的基本矩阵操作示例
2019/07/19 Python
如何基于python实现归一化处理
2020/01/20 Python
python的Jenkins接口调用方式
2020/05/12 Python
Python StringIO及BytesIO包使用方法解析
2020/06/15 Python
使用OpenCV对车道进行实时检测的实现示例代码
2020/06/19 Python
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
药学专业大学生个人的自我评价
2013/11/04 职场文书
财务出纳员岗位职责
2013/11/26 职场文书
2015公务员年度考核评语
2015/03/25 职场文书
改进工作作风心得体会
2016/01/23 职场文书
初中数学教学反思范文
2016/02/17 职场文书
SpringBoot整合Mybatis Generator自动生成代码
2021/08/23 Java/Android
MySQL索引失效场景及解决方案
2022/07/23 MySQL
Vue Element plus使用方法梳理
2022/12/24 Vue.js