zoukankan      html  css  js  c++  java
  • js-cookie

    cookie的概念:https://www.jianshu.com/p/6fc9cea6daa2

    js-cookie是一个简单的,轻量级的处理cookies的js API

    创建

    //创建简单的cookie
    Cookies.set('name', 'value');
    //创建有效期为7天的cookie
    Cookies.set('name', 'value', { expires: 7 });
    //为当前页创建有效期7天的cookie
    Cookies.set('name', 'value', { expires: 7, path: '' });

    取值

    Cookies.get('name'); // => 'value'
    Cookies.get('nothing'); // => undefined
    //获取所有cookie
    Cookies.get(); // => { name: 'value' }

    删除值

    Cookies.remove('name');
    
    //如果值设置了路径,那么不能用简单的delete方法删除值,需要在delete时指定路径
    Cookies.set('name', 'value', { path: '' });
    Cookies.remove('name'); // 删除失败
    Cookies.remove('name', { path: '' }); // 删除成功
    //注意,删除不存在的cookie不会报错也不会有返回

    命名空间

    如果担心不小心修改掉Cookies中的数据,可以用noConflict方法定义一个新的cookie。

    var Cookies2 = Cookies.noConflict();
    Cookies2.set('name', 'value');

    json相关

    js-cookie允许你向cookie中存储json信息。

    如果你通过set方法,传入Array或类似对象,而不是简单的string,那么js-cookie会将你传入的数据用JSON.stringify转换为string保存。

    Cookies.set('name', { foo: 'bar' });
    Cookies.get('name'); // => '{"foo":"bar"}'
    Cookies.get(); // => { name: '{"foo":"bar"}' }

    如果你用getJSON方法获取cookie,那么js-cookie会用JSON.parse解析string并返回。

    Cookies.getJSON('name'); // => { foo: 'bar' }
    Cookies.getJSON(); // => { name: { foo: 'bar' } }

    set方法支持的属性

    1.expires

    定义有效期。如果传入Number,那么单位为天,你也可以传入一个Date对象,表示有效期至Date指定时间。默认情况下cookie有效期截止至用户退出浏览器。

    2.path

    string,表示此cookie对哪个地址可见。默认为”/”。

    3.domain

    string,表示此cookie对哪个域名可见。设置后cookie会对所有子域名可见。默认为对创建此cookie的域名和子域名可见。

    4.secure

    true或false,表示cookie传输是否仅支持https。默认为不要求协议必须为https。

    骚操作

    1.write

    通过withConverter方法可以覆写默认的decode实现,并返回一个新的cookie实例。所有与decode有关的get操作,如Cookies.get()或Cookies.get(‘name’)都会先执行此方法中的代码。

    document.cookie = 'escaped=%u5317';
    document.cookie = 'default=%E5%8C%97';
    var cookies = Cookies.withConverter(function (value, name) {
        if ( name === 'escaped' ) {
            return unescape(value);
        }
    });
    cookies.get('escaped'); //
    cookies.get('default'); //
    cookies.get(); // { escaped: '北', default: '北' }

    2.read

    通过withConverter方法也可以覆写默认的encode实现,并返回一个新的cookie实例。

    Cookies.withConverter({
        read: function (value, name) {
            // Read converter
        },
        write: function (value, name) {
            // Write converter
        }
    });
    活到老,学到老。 踏实+激情+坚持
  • 相关阅读:
    python用于web题里写解密脚本
    改变checkbox和radio的默认样式
    div内元素垂直居中
    icheck.js插件
    glyphicons字形图标
    没有内容的span元素下掉问题
    临界区保护
    信号量的使用&生产者消费者问题
    空闲线程和钩子函数
    线程的时间片轮询调度
  • 原文地址:https://www.cnblogs.com/andyZhang0511/p/12022525.html
Copyright © 2011-2022 走看看