var istorage = (function istorage() {
    var support = function(){
        var _localStorage = window.localStorage;
        if(!_localStorage){
          return false;
        }
        var key = 'goodlucktoyou';
        try{
            _localStorage.setItem(key, '1');
            _localStorage.removeItem(key);
            return true;
        }catch (error){
            return false;
        }
    };
    var ms = "istorage";
    var storage = window.localStorage;
    var set = function(key, value) {
        var ob = storage.getItem(ms);
        if (!ob) {
            this.init();
            ob = storage.getItem(ms);
        }
        ob = JSON.parse(ob);
        ob.data[key] = value;
        storage.setItem(ms, JSON.stringify(ob));
        return ob.data;
    };
    var get = function(key) {
        var ob = storage.getItem(ms);
        if (!ob) {
            return false;
        }
        ob = JSON.parse(ob);
        return ob.data[key];
    };
    var remove = function(key) {
        var ob = storage.getItem(ms);
        if (!ob) {
            return false;
        }
        ob = JSON.parse(ob);
        delete ob.data[key];
        storage.setItem(ms, JSON.stringify(ob));
        return ob.data;
    };
    var clear = function() {
        storage.removeItem(ms);
    };
    var init = function() {
        storage.setItem(ms, '{"data":{}}');
    };
    return {
        set: set,
        get: get,
        remove: remove,
        init: init,
        clear: clear,
        support: support
    };
})();

//istorage.clear();
//console.log(istorage.set('tqtest', 'tqtestcontent'));
//console.log(istorage.remove('tqtest'));