封裝cookie localStorage sessionStorage

來源:互聯網
上載者:User

標籤:component   ret   bre   key   rem   turn   pat   pre   ons   

var cookie = function(name, value, options) {        if (typeof value !== ‘undefined‘) {            options = options || {};            if (value === null) {                value = ‘‘;                options = $.extend({}, options);                options.expires = -1;            }            var expires = ‘‘;            if (options.expires && (typeof options.expires === ‘number‘ || options.expires.toUTCString)) {                var date;                if (typeof options.expires === ‘number‘) {                    date = new Date();                    date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));                } else {                    date = options.expires;                }                expires = ‘; expires=‘ + date.toUTCString();            }            var path = options.path ? ‘; path=‘ + (options.path) : ‘;path=/‘;            var domain = options.domain ? ‘; domain=‘ + (options.domain) : ‘‘;            var secure = options.secure ? ‘; secure‘ : ‘‘;            document.cookie = [name, ‘=‘, encodeURIComponent(value), expires, path, domain, secure].join(‘‘);        } else {            var cookieValue = null;            if (document.cookie && document.cookie !== ‘‘) {                var cookies = document.cookie.split(‘;‘);                for (var i = 0; i < cookies.length; i++) {                    var cookie = $.trim(cookies[i]);                    if (cookie.substring(0, name.length + 1) === (name + ‘=‘)) {                        cookieValue = decodeURIComponent(cookie.substring(name.length + 1));                        break;                    }                }            }            return cookieValue;        }    }    var removeCookie = function(key) {        $.cookie(key, ‘‘, {            expires: -1        });    }
 var storage = function(st, key, value, expires) {            if (st == ‘l‘) {                st = window.localStorage;                expires = expires || 60;            } else {                st = window.sessionStorage;                expires = expires || 5;            }            if (typeof value != ‘undefined‘) {                try {                    return st.setItem(key, JSON.stringify({                        data: value,                        expires: new Date().getTime() + expires * 1000 * 60                    }));                } catch (e) {}            } else {                var result = JSON.parse(st.getItem(key) || ‘{}‘);                if (result && new Date().getTime() < result.expires) {                    return result.data;                } else {                    st.removeItem(key);                    return null;                }            }        }

 

封裝cookie localStorage sessionStorage

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.