cookie.js随记

2017-03-21  本文已影响0人  清葉

cookie:

为了实现某些功能,把一些数据存储到用户的本地计算机。
注意事项:同源
    1)必须是服务环境
    2)不安全 , 因为它存在了用户的本地机器上(临时存储)
    3)过期时间:
        默认:  session ——  会话时间(会话结束、浏览器关闭,cookie消失)
    4)大小、容量 一般 4K  左右,有的浏览器还有条数的限制
        —— 珍贵的资源
    5)不管看到的是什么,值都是String类型

使用jquery的插件:jquery.cookie.js
库: jquery.js
插件:jquery.cookie.js

要解决的两个问题:
1)如何来存储一个cookie
2)如何取出来用

1、存:写,种

$.cookie('cookename','cookievalue');
    cookie 是同源的,源头是一个——同一个域名下
Expires/Max - Age:
    表示的就是cookie的过期时间:默认值—— Session
        Session:  会话结束后(浏览器关闭)就消失
    不能存中文 encodeURI(users);

2、设置过期时间

$.cookie('cookie名字','cookie值',选项);
    选项:多个选项,JSON格式
        $.cookie('name',value,{
            expires: 天数
        });

3、读cookie

$.cookie('name');

4、路径问题

如果cookie路径path不一样:
    父读子 读不到
    子读父 能读到
通常,一个网站,只用一套cookie
解决: 选项  ——   path
    $.cookie(name,value,{
        expires:天数,
        path: '/'  ——// 通常情况下 设置为网站的根路径
    });

5、修改一个cookie 的值

设置方法一样:  
    $.cookie('name','新的value',{
        path: //  如果当前程序的path和cookie的path不一致,那么这里一定要指定path参数
    });

6、删除一个cookie

    1)设成空  ×
    2)右键-delete
    3)把过期时间设置成负值  √

7、使用jquery.cookie插件来设置cookie的时候,过期时间,和现在的时间相差8小时

expires:    数字 —— 天数
            日期对象—— 灵活设置

8、取出来的值,不管看上去是什么,其类型都是 string

* 既然cookie里存的都是字符串,那么在存的时候就明确的写成字符串,
    避免系统做对应的类型转换:  
        如: $.cookie('a',{a:1,b:1});  存的是  object Object   ×
            $.cookie('a','{"a":1,"b":1}');   √

本地存储:

html5,提供了一个新东西:localStorage,sessionStorage

访问所有的 localSorage 里的东西:

for(var i = 0; i< window.localStorage.length;i++){
    alert(window.localStorage.key(i));
    //key()方法,向其中出入索引即可获取对应的键
}

小总结:

cookie:
        特点:小 ,服务器下 ,过期时间,完全兼容,使用不方便!
        存 取 删
localStorage:
        特点:大,没有过期时间,IE8以上,使用还挺方便
        共同点:不安全、不能跨域、不能跨浏览器

原生JS操作cookie:

document.cookie
存:
    document.cookie = 'aaa';——只写了value=aaa,没有写name是多少

    document.cookie = 'test=abc';

    var oDate = new Date();
    oDate.setDate(oDate.getDate()+1);
    document.cookie = 'testDate=123456;path=/;expires='+oDate.toUTCString();;
读:
    document.cookie —— 各种切
删:时间设成负值
上一篇下一篇

猜你喜欢

热点阅读