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 相关文章推荐
JS网络游戏-(模拟城市webgame)提供的一些例子下载
Oct 14 Javascript
js判断两个日期是否相等的方法
Sep 10 Javascript
js弹出div并显示遮罩层
Feb 12 Javascript
jQuery设置与获取HTML,文本和值的简单实例
Feb 26 Javascript
解析Node.js基于模块和包的代码部署方式
Feb 16 Javascript
Bootstrap缩略图的创建方法
Mar 22 Javascript
jquery实现限制textarea输入字数的方法
Sep 06 jQuery
EasyUI实现下拉框多选功能
Nov 07 Javascript
详解项目升级到vue-cli3的正确姿势
Jan 28 Javascript
javascript数组常见操作方法实例总结【连接、添加、删除、去重、排序等】
Jun 13 Javascript
基于JQuery和DWR实现异步数据传递
Oct 16 jQuery
JS跨浏览器解析XML应用过程详解
Oct 16 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和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
2011/07/03 PHP
PHP编程基本语法快速入门手册
2016/01/07 PHP
PHP常用文件操作函数和简单实例分析
2016/06/03 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
2018/10/15 PHP
用Javascript读取中文COOKIE的解决办法
2007/02/15 Javascript
js小技巧--自动隐藏红叉叉
2007/08/13 Javascript
深入理解JavaScript系列(8) S.O.L.I.D五大原则之里氏替换原则LSP
2012/01/15 Javascript
JavaScript中数组成员的添加、删除介绍
2014/12/30 Javascript
Knockoutjs 学习系列(一)ko初体验
2016/06/07 Javascript
Ubuntu系统下Angularjs开发环境安装
2016/09/01 Javascript
jQuery中slidedown与slideup方法用法示例
2016/09/16 Javascript
Vue.js一个文件对应一个组件实践
2016/10/27 Javascript
JavaScript原生编写《飞机大战坦克》游戏完整实例
2017/01/04 Javascript
vue.js框架实现表单排序和分页效果
2017/08/09 Javascript
详解Nuxt.js部署及踩过的坑
2018/08/07 Javascript
jQuery子选择器与可见性选择器实例分析
2019/06/28 jQuery
[01:04:49]KG vs LGD 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python使用代理抓取网站图片(多线程)
2014/03/14 Python
python随机生成指定长度密码的方法
2015/04/04 Python
详解python中requirements.txt的一切
2017/03/03 Python
python切片及sys.argv[]用法详解
2018/05/25 Python
Python查找第n个子串的技巧分享
2018/06/27 Python
Linux下安装python3.6和第三方库的教程详解
2018/11/09 Python
python变量赋值方法(可变与不可变)
2019/01/12 Python
Pytorch中accuracy和loss的计算知识点总结
2019/09/10 Python
python 基于wx实现音乐播放
2020/11/24 Python
CSS3的 fit-content实现水平居中
2017/09/07 HTML / CSS
Wolford法国官网:奥地利奢侈内衣品牌
2020/08/11 全球购物
Java中实现多态的机制
2015/08/09 面试题
党员创先争优活动总结
2014/05/04 职场文书
幼师小班个人总结
2015/02/12 职场文书
舌尖上的中国观后感
2015/06/02 职场文书
学困生帮扶工作总结
2015/08/13 职场文书
2016大一新生军训感言
2015/12/08 职场文书
《家世》读后感:看家训的力量
2019/12/30 职场文书
详解Python牛顿插值法
2021/05/11 Python