cookie格式?
cookie就是一串字符串,格式就是键值对,分号隔开,三个属性可有可无。
cookieName=cookieValue;expires=GMTString;path=URLpath;domain=siteDomain cookie名称 cookie值 失效日期 可访问url 可访问主机
eg:
//写入7天后过期的cookie
var date=new Date();
date.setDate(date.getDate()+7);
//一个网站中可能会有很多网页都需要保存cookie。
同样是给document.cookie属性赋值。不会覆盖原来的cookie,只会追加(除非键是一样的)。
document.cookie="userName=zhang; expires="+date.toGMTString();
document.cookie="userPws=123456; expires="+date.toGMTString();
读取上边写入的cookie,因为cookie每次是全部获取,所以需要自己写解析cookie的代码。
var uname,upws;
var cookiearr=document.cookie.split("; ");
for(var i=0;i
获取cookie,只需要一句话:document.cookie
document.cookie=“cookieName=cookieValue”;//设置cookie
没有指定失效日期的cookie在浏览器关闭后就消失。
可访问url指定网站下能够访问cookie的路径。例:/shop 可访问主机指定可访问cookie的主机名。例:www.163.com和mail.163.com指定为163.com
注:失效日期由date.toGMTString()方法取得。
Cookie的特点
(1)cookie可能被禁用。
(2)cookie是与浏览器相关的。不同浏览器所保存的cookie也是不能互相访问的。
(3)cookie可能被用户删除。
(4)cookie安全性不够高。如果要保存用户名密码等信息时,最好事先经过加密处理。
(5)存储的数据量 4k 大小,cookie只支持存储string类型的数据。
(6)简单易用。
(7)信息存储于用户硬盘,因此可以作为全局变量。
cookie的增删改
添加与覆盖: 浏览器用cookie名称来区别cookie,添加不同名称cookie会一直续在前一个cookie后,同名的cookie会覆盖值。
删除cookie: 不能直接删除cookie,但是设置过期日期为过去,浏览器会删除cookie。
中文及特殊字符支持: 使用escape()函数编码cookie值,读取时使用unescape()函数解码。
判断cookie是否存在: document.cookie.indexOf(NameOfCookie+“=”); //使用字符串函数indexOf
例:document.cookie=“str=”+escape(“I love ajax”);相当于document.cookie="str=I%20love%20ajax";
JSON与字符串的互相转换
JSON.parse()【从一个字符串中解析出JSON对象】
例: var data='{"name":"goatling"}' JSON.parse(data) 结果是: {name:"goatling“}
JSON.stringify()【从一个JSON对象中解析出字符串】
例:var data={name:'goatling'} JSON.stringify(data) 结果是: '{"name":"goatling"}‘