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 相关文章推荐
lib.utf.js
Aug 21 Javascript
html中的input标签的checked属性jquery判断代码
Sep 19 Javascript
JavaScript定义类的几种方式总结
Jan 06 Javascript
jQuery中:eq()选择器用法实例
Dec 29 Javascript
Angularjs单选改为多选的开发过程及问题解析
Feb 17 Javascript
微信小程序获取循环元素id以及wx.login登录操作
Aug 17 Javascript
vue组件之Alert的实现代码
Oct 17 Javascript
vue实现图片滚动的示例代码(类似走马灯效果)
Mar 03 Javascript
详解使用create-react-app快速构建React开发环境
May 16 Javascript
JS基于ES6新特性async await进行异步处理操作示例
Feb 02 Javascript
使用webpack搭建vue项目及注意事项
Jun 10 Javascript
JS实现秒杀倒计时特效
Jan 02 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/12/06 PHP
PHP Memcached应用实现代码
2010/02/08 PHP
备份mysql数据库的php代码(一个表一个文件)
2010/05/28 PHP
php学习笔记 数组遍历实现代码
2011/06/09 PHP
PHP实现AES256加密算法实例
2014/09/22 PHP
PHP封装CURL扩展类实例
2015/07/28 PHP
谈谈你对Zend SAPIs(Zend SAPI Internals)的理解
2015/11/10 PHP
JavaScript之编码规范 推荐
2012/05/23 Javascript
ajax上传时参数提交不更新等相关问题
2012/12/11 Javascript
addEventListener()第三个参数useCapture (Boolean)详细解析
2013/11/07 Javascript
浅谈JavaScript中定义变量时有无var声明的区别
2014/08/18 Javascript
javascript实现点击后变换按钮显示文字的方法
2015/05/13 Javascript
使用JavaScript实现旋转的彩圈特效
2015/06/23 Javascript
Jquery中request和request.form和request.querystring的区别
2015/11/26 Javascript
详解照片瀑布流效果(js,jquery分别实现与知识点总结)
2017/01/01 Javascript
Angular 2父子组件数据传递之@ViewChild获取子组件详解
2017/07/04 Javascript
详解vue-loader在项目中是如何配置的
2018/06/04 Javascript
Nuxt.js开启SSR渲染的教程详解
2018/11/30 Javascript
vue多层嵌套路由实例分析
2019/03/19 Javascript
基于iview的router常用控制方式
2019/05/30 Javascript
javascript实现滚轮轮播图片
2020/12/13 Javascript
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
[30:55]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第二场 11.18
2020/11/18 DOTA
Python格式化css文件的方法
2015/03/10 Python
Python数据结构与算法之图结构(Graph)实例分析
2017/09/05 Python
基于Python+Appium实现京东双十一自动领金币功能
2019/10/31 Python
挪威太阳镜和眼镜网上商城:SmartBuyGlasses挪威
2016/08/20 全球购物
精油和天然健康美容产品:Art Naturals
2018/01/27 全球购物
如何保障Web服务器安全
2014/05/05 面试题
座谈会主持词
2014/03/20 职场文书
付款委托书范本
2014/04/04 职场文书
公司更名通知函
2015/04/24 职场文书
JS数组的常用方法整理
2021/03/31 Javascript
Python语言规范之Pylint的详细用法
2021/06/24 Python
漫画「古见同学有交流障碍症」第25卷封面公开
2022/03/21 日漫
CentOS7和8下安装Maven3.8.4
2022/04/07 Servers