JS整理Cookie数据

作者:驰坤 时间:
var cookieFn = {
                cookieArry: [],
                getCookieArry: function () {
                    var cookiesStr = document.cookie;
                    var currCookies = [];
                    var currCookiesArry = cookiesStr.split(';');
                    for (var i = 0; i < currCookiesArry.length; i++) {
                        var item = currCookiesArry[i].trim();
                        var newCoolie = {};
                        if (item) {
                            var itemArry = item.split('&');
                            var obj = {};
                            var isSan = false;
                            for (var j = 0; j < itemArry.length; j++) {
                                var item2 = itemArry[j];
                                var item2Arry = item2.split('=');
                                if (j == 0 && item2.split('=').length == 3) {
                                    var newArry = [];
                                    newArry.push(item2Arry[1]);
                                    newArry.push(item2Arry[2]);
                                    item2Arry = newArry;
                                    isSan = true;
                                }
                                obj[item2Arry[0]] = item2Arry[1]
                            }
                            if (isSan) {
                                var currKey = itemArry[0].split('=')[0];
                                var sanObj = {};
                                sanObj[currKey] = obj;
                                newCoolie = sanObj;
                            } else {
                                newCoolie = obj;
                            }
                        }
                        currCookies.push(newCoolie);
                    }
                    cookieFn.cookieArry = currCookies;
                    return currCookies;
                },
                getCookie2: function (key) {
                    if (cookieFn.cookieArry.length == 0)
                        cookieFn.getCookieArry();
                    for (var i = 0; i < cookieFn.cookieArry.length; i++) {
                        var currCookie = cookieFn.cookieArry[i];
                        var currCookieObj = currCookie[key];
                        if (currCookieObj) {
                            return currCookieObj;
                        }
                    }
                    return {};
                },
                getCookie3: function (key, key2) {
                    if (cookieFn.cookieArry.length == 0)
                        cookieFn.getCookieArry();
                    for (var i = 0; i < cookieFn.cookieArry.length; i++) {
                        var currCookie = cookieFn.cookieArry[i];
                        var currCookieObj = currCookie[key];
                        if (currCookieObj && currCookieObj[key2]) {
                            return currCookieObj[key2];
                        }
                    }
                    return {};
                }
            };
/*
获取2级cookie对象可用getCookie2
获取3级cookie对象可用getCookie3
*/